From 4e50ba2b63c014c8533c4a1a4514cb6ca6469038 Mon Sep 17 00:00:00 2001
From: Jaewon-Yun <81426024+woin2ee@users.noreply.github.com>
Date: Fri, 26 Apr 2024 04:55:42 +0900
Subject: [PATCH] Add translation for 1.1.0 (#610)
---
source/ko/1.1.0/index.html.haml | 290 ++++++++++++++++++++++++++++++++
1 file changed, 290 insertions(+)
create mode 100644 source/ko/1.1.0/index.html.haml
diff --git a/source/ko/1.1.0/index.html.haml b/source/ko/1.1.0/index.html.haml
new file mode 100644
index 0000000..77116b7
--- /dev/null
+++ b/source/ko/1.1.0/index.html.haml
@@ -0,0 +1,290 @@
+---
+title: Keep a Changelog
+description: 동료들이 git 로그를 그대로 changelogs에 올리게 내버려 두지 마세요.
+language: ko
+version: 1.1.0
+---
+.header
+ .title
+ %h1= current_page.data.title
+ %h2= current_page.data.description
+
+ = link_to data.links.changelog do
+ Version
+ %strong= current_page.metadata[:page][:version]
+
+ %pre.changelog{ lang: "en" }= File.read("CHANGELOG.md")
+
+.answers
+ %h3#what
+ %a.anchor{ href: "#what", aria_hidden: "true" }
+ Changelog는 무엇인가요?
+
+ %p
+ Changelog는 프로젝트의 각 버전에 대해 주목할 만한 변경 사항들을 시간 순서대로 정리한 파일입니다.
+
+ %h3#why
+ %a.anchor{ href: "#why", aria_hidden: "true" }
+ 왜 changelog를 유지해야 하나요?
+
+ %p
+ 사용자와 기여자가 프로젝트의 각 릴리즈(또는 버전)간에 정확히 어떤 주목할만한 변경 사항이 있는지 알기 쉬워집니다.
+
+ %h3#who
+ %a.anchor{ href: "#who", aria_hidden: "true" }
+ 누가 changelog를 필요로 하나요?
+
+ %p
+ 사람들이 필요로 합니다. 개발자이든 사용자이든, 소프트웨어의 최종 사용자는 소프트웨어에 무엇이 있는지 관심이 있는 사람입니다.
+ 소프트웨어에 변경 사항이 있을 때, 사람들은 왜 그리고 어떻게 바뀌었는지 알고 싶어 합니다.
+
+.good-practices
+ %h3#how
+ %a.anchor{ href: "#how", aria_hidden: "true" }
+ 어떻게 좋은 changelog를 만들수 있나요?
+
+ %h4#principles
+ %a.anchor{ href: "#principles", aria_hidden: "true" }
+ 가이드 원칙
+
+ %ul
+ %li
+ Changelogs는 사람을 위한 것입니다. 기계를 위한 것이 아닙니다.
+ %li
+ 모든 단일 버전에 대한 항목이 있어야 합니다.
+ %li
+ 같은 유형의 변경 사항은 그룹으로 묶어야 합니다.
+ %li
+ 버전 및 섹션들은 링크를 통해 연결될 수 있어야 합니다.
+ %li
+ 최신 버전이 처음에 와야 합니다.
+ %li
+ 각 버전의 릴리즈 날짜를 표시해야 합니다.
+ %li
+ 프로젝트가 #{link_to "시맨틱 버저닝", data.links.semver}을 따르는지를 언급해야 합니다.
+
+ %a.anchor{ href: "#types", aria_hidden: "true" }
+ %h4#types 변경 유형
+
+ %ul
+ %li
+ %code Added
+ 새로운 기능
+ %li
+ %code Changed
+ 기존 기능의 변경
+ %li
+ %code Deprecated
+ 곧 없어질 기능
+ %li
+ %code Removed
+ 없어진 기능
+ %li
+ %code Fixed
+ 버그 수정
+ %li
+ %code Security
+ 보안 취약점에 관하여
+
+.effort
+
+ %h3#effort
+ %a.anchor{ href: "#effort", aria_hidden: "true" }
+ Changelog를 관리하기 위해 필요한 노력을 어떻게 줄일 수 있나요?
+
+ %p
+ Unreleased
섹션을 가장 위에 두어 다가올 변경 사항들을 추적할 수 있도록 하세요.
+
+ %p 이것은 두 가지 목적이 있습니다.
+
+ %ul
+ %li
+ 사람들이 향후 릴리즈에서 예상되는 변경 사항들을 확인할 수 있습니다.
+ %li
+ 릴리즈 시점에 Unreleased
섹션의 변경 사항들을 새 릴리즈 버전의 섹션으로 이동할 수 있습니다.
+
+.bad-practices
+ %h3#bad-practices
+ %a.anchor{ href: "#bad-practices", aria_hidden: "true" }
+ Changelogs가 나빠질 수 있나요?
+
+ %p 네. 여기에 changelog가 쓸모없게 되는 몇 가지 경우들이 있습니다.
+
+ %h4#log-diffs
+ %a.anchor{ href: "#log-diffs", aria_hidden: "true" }
+ 커밋 로그 차이(Commit log diffs)
+
+ %p
+ 커밋 로그의 차이를 changelog로 사용하는 것은 안 좋은 생각입니다.
+ 커밋 로그는 머지 커밋, 모호한 타이틀을 가진 커밋, 문서 변경 등 노이즈로 가득 차 있습니다.
+
+ %p
+ 커밋의 목적은 소스 코드 진화의 단계를 기록하기 위함입니다.
+ 어떤 프로젝트는 커밋을 정리하지만, 어떤 프로젝트는 하지 않습니다.
+
+ %p
+ changelog 기재의 목적은 흔히 다수의 커밋에 걸친 주목할만한 차이를
+ 최종 사용자에게 명확하게 전달하기 위해 문서화하는 것입니다.
+
+ %h4#ignoring-deprecations
+ %a.anchor{ href: "#ignoring-deprecations", aria_hidden: "true" }
+ 없어질 기능들(Deprecations) 무시하기
+
+ %p
+ 사람들이 다른 버전으로 업데이트 할 때, 언제 어떤 것이 중단될지(break) 극도로 분명해야 합니다.
+ 앞으로 없어질 기능들(deprecations)이 나열된 버전으로 업데이트하고,
+ 더 이상 사용하지 않는 기능(deprecated)을 제거한 뒤, 그 기능들이
+ 정말 삭제된 버전으로 업데이트 하는 것이 가능해야 합니다.
+
+ %p
+ 최소한, 앞으로 없어질 기능들, 제거된 것 그리고 모든 급격한 변화(breaking changes)는 changelog에 남기십시오.
+
+
+ %h4#confusing-dates
+ %a.anchor{ href: "#confusing-dates", aria_hidden: "true" }
+ 혼란스러운 날짜
+
+ %p
+ 지역별 날짜 포맷은 전세계에 걸쳐 다양하며 모든 사람이 직관적으로 느낄 수 있는 인간 친화적 날짜 포맷을 찾기 힘든 경우가 많습니다.
+ 2017-07-17
같은 날짜 포맷(연, 월, 일)의 장점은
+ 큰 단위부터 작은 단위의 순서를 따른다는 것입니다.
+ 월과 일의 위치가 뒤바뀐 어떤 포맷과 다르게, 이 포맷은 다른 날짜 포맷과 모호하게 겹치는 부분이 없습니다.
+ 이런 이유와 이 포맷이 #{link_to "ISO standard", data.links.isodate}라는 사실이
+ changelog 기재에 이 날짜 포맷을 추천하는 이유입니다.
+
+ %h4#inconsistent-changes
+ %a.anchor{ href: "#inconsistent-changes", aria_hidden: "true" }
+ 일관성 없는 변경 사항
+
+ %p
+ 일부 변경 사항만 언급하는 changelog는 changelog가 없는 것만큼 위험할 수 있습니다.
+ 물론 기록하지 않아도 되는 변경 사항도 많이 있습니다.
+ 예를 들어, 단순히 공백 하나를 삭제한 것은 어떤 경우에도 기록할 필요가 없을 수도 있습니다.
+ 하지만 중요한 변경 사항은 changelog에 명시되어야 합니다.
+ 일관성 없이 변경 사항을 적용하면 사용자들이 changelog가 단일 진실 공급원(Single source of truth)이라고
+ 착각할 수 있습니다.
+ 큰 권한에는 큰 책임이 따릅니다. 좋은 변경 로그는 일관성 있게 업데이트되는 변경 로그를 의미합니다.
+
+ %aside
+ 안티패턴은 더 있습니다.
+ = link_to "이슈 오픈하기", data.links.issue
+ 나 pull request를 통해
+ 안티패턴들을 모으는 것을 도와주세요.
+
+.frequently-asked-questions
+ %h3#frequently-asked-questions
+ %a.anchor{ href: "#frequently-asked-questions", aria_hidden: "true" }
+ 자주 하는 질문
+
+ %h4#standard
+ %a.anchor{ href: "#standard", aria_hidden: "true" }
+ Changelog의 표준 포맷이 있나요?
+
+ %p
+ 없습니다. #{link_to "GNU changelog 스타일 가이드", data.links.gnustyle} 또는
+ 두 문단 정도의 #{link_to "GNU NEWS file", data.links.gnunews} "가이드라인"이 있습니다.
+ 하지만 둘 다 부적절하거나 불충분합니다.
+
+ %p
+ 이 프로젝트의 목표는
+ = link_to "더 나은 changelog 규칙", data.links.changelog
+ 입니다.
+ 이것은 오픈소스 커뮤니티에서 좋은 사례를 관찰하고 모으는 데서 비롯됩니다.
+
+ %p
+ 건강한 비판, 토론 및 개선 제안은
+ = link_to "환영합니다.", data.links.issue
+
+
+ %h4#filename
+ %a.anchor{ href: "#filename", aria_hidden: "true" }
+ Changelog 파일의 이름을 무엇으로 지어야 하나요?
+
+ %p
+ CHANGELOG.md
라고 만드세요. 어떤 프로젝트는
+ HISTORY
, NEWS
또는 RELEASES
를 사용합니다.
+
+ %p
+ changelog 파일의 이름이 무슨 상관이냐고 생각하기 쉽겠지만,
+ 최종 사용자가 주목할 만한 변경 사항을 일관적으로 찾기 쉬워집니다.
+
+ %h4#github-releases
+ %a.anchor{ href: "#github-releases", aria_hidden: "true" }
+ 깃허브 릴리즈는 어떻게 하나요?
+
+ %p
+ 이것은 훌륭한 계획입니다. #{link_to "릴리즈", data.links.github_releases}는
+ 직접 릴리즈 노트를 추가하여 간단한 깃 태그(예를 들어 v1.0.0
태그)를
+ 풍부한 릴리즈 노트로 전환하거나, 주석이 달린 깃 태그 메시지를 가져와서
+ 릴리즈 노트로 전환할 수 있습니다.
+
+ %p
+ 깃허브 릴리즈는 이식 불가능한 changelog를 생성하며, 이는 깃허브 내에서만 사용자들에게 보여집니다.
+ Keep a Changelog 포맷처럼 보이게 만드는 게 가능하지만, 좀 더 복잡해지는 경향이 있습니다.
+
+ %p
+ 일반적인 대문자 파일들(README
, CONTRIBUTING
등)과 달리,
+ 깃허브 릴리즈의 현재 버전은 최종 사용자가 쉽게 찾아볼 수 없습니다.
+ 또 다른 사소한 이슈는 깃허브 릴리즈의 인터페이스가 현재 각 릴리스 간의 커밋 로그 링크를 제공하지 않는다는 것입니다.
+
+ %h4#automatic
+ %a.anchor{ href: "#automatic", aria_hidden: "true" }
+ Changelog를 자동으로 파싱할 수 있나요?
+
+ %p
+ 사람들이 매우 다양한 포맷과 파일 이름을 따르기 때문에 어렵습니다.
+
+ %p
+ #{link_to "Vandamme", data.links.vandamme}은 Gemnasium 팀에 의해
+ 생성된 Ruby gem이고 전부는 아니지만 많은 오픈소스 프로젝트의 changelog를 파싱합니다.
+
+
+ %h4#yanked
+ %a.anchor{ href: "#yanked", aria_hidden: "true" }
+ 삭제된 릴리즈(Yanked release)는 어떻게 하나요?
+
+ %p
+ 삭제된(Yanked) 릴리즈는 심각한 버그나 보안 이슈 때문에 소스에서 들어내 버린 버전을 말합니다.
+ 이런 버전은 changelog에 나타내지 않는 경우가 않지만, 나타내야 합니다. 이것이 삭제된 릴리즈를
+ 표시하는 방법입니다.
+
+ %p ## [0.0.5] - 2014-12-13 [YANKED]
+
+ %p
+ 사람들이 알아차리는 것이 중요하기 때문에 눈에 띄는 [YANKED]
태그가 있습니다.
+ 대괄호 안에 있기 때문에 프로그래밍적으로 파싱하기에도 용이합니다.
+
+
+ %h4#rewrite
+ %a.anchor{ href: "#rewrite", aria_hidden: "true" }
+ Changelog를 다시 작성한 적이 있나요?
+
+ %p
+ 물론입니다. changelog를 개선할 좋은 이유는 항상 있습니다.
+ 저는 정기적으로 changelog가 관리되지 않은 오픈소스에 pull request를 열어서
+ 누락된 릴리즈를 추가합니다.
+
+ %p
+ 또한, 어떤 버전의 급격한 변화에 대한 언급을 잊은 걸 발견할 수도 있습니다.
+ 이 경우엔 changelog를 업데이트하는 것이 당연히 중요합니다.
+
+
+ %h4#contribute
+ %a.anchor{ href: "#contribute", aria_hidden: "true" }
+ 어떻게 기여할 수 있나요?
+
+ %p
+ 이 문서가 진리는 아닙니다. 이것은 제가 모은 정보와 예제들과 함께
+ 신중하게 고려한 의견입니다.
+
+ %p
+ 이는 우리 커뮤니티가 합의점에 도달하기를 원하기 때문입니다. 저는 최종결과 못지않게 토론도 중요하다고 생각합니다.
+
+ %p
+ 그러니 많은 #{link_to "참여", data.links.repo} 부탁드립니다.
+
+.press
+ %h3 담화
+ %p
+ 왜 관리자와 기여자가 changelog를 신경써야하는지, 또한 이 프로젝트의 동기에 대해 이야기하기 위해
+ #{link_to "The Changelog 팟캐스트", data.links.thechangelog}에 다녀왔습니다.