왜 필요한가

번역 도구에서 자원봉사자가 화면 문구를 고칩니다. 유지보수 팀은 이미 hg 스크립트를 씁니다. Git으로 이전하지 않고 수정 가능한 작업과 공유된 이력을 구분하고 싶습니다.

어떻게 해결하는가

문구 수정을 로컬에 draft로 커밋합니다. 팀의 publishing 저장소로 push하면 양쪽에서 public 단계가 됩니다. 이력을 고치기 전에 단계를 확인합니다.

문구 수정이 publishing 경계를 넘어 draft에서 public으로 이동

번역 도구 · 공유 단계

같은 변경, 달라진 공유 단계

draft

01 / 로컬 문구 수정

hg commit · 기본 새 커밋 단계

번역: 저장 문구 명확히 하기

02 / hg push ↓

publishing으로 설정된 원격

public

03 / 공유된 이력

로컬과 원격 저장소 모두 public

같은 문구 수정 · 이력 수정 전 확인

public 단계 ≠ 공개 접근. 공유 이력을 나타내는 단계이며 저장소 권한이 아닙니다.

무엇이라 부르는가

Mercurial은 분산 버전 관리입니다. 단계는 접근 권한이 아닌 공유 상태이므로 public이 인터넷 공개 저장소를 뜻하지 않습니다. non-publishing 원격에서는 draft를 교환할 수 있습니다. 필수 연동이 Git을 요구하면 Git이 더 맞을 수 있습니다.

출처