default
을 주 개발 지점으로 유지하는 것이 좋을 때 Martin의 대답을 고려하면 두 가지 가능성을 알 수 있습니다.
Martin은 이미 다루었으므로 새로운 저장소에서 가장 먼저해야 할 일은 "초기 설정"입니다. 일반적으로 표준 템플릿 .hgignore
파일을 포함 할 수 있습니다. 덧붙여서 나는 이것보다 더 나은 선택이라고 생각한다 ...
다른 이름의 브랜치를 이미 커밋했다면, null
changeset (작업 디렉토리 비우기)로 업데이트 한 다음 merge
으로 업데이트하면된다. 그러면 "default"라는 분기가 만들어집니다.
먼저 우리는 개발 분기에 몇 가지 작업을 할 수 있습니다 :
C:\tmp\test>hg init .
C:\tmp\test>hg branch devbranch
marked working directory as branch devbranch
C:\tmp\test>echo something > out.txt
C:\tmp\test>hg add .
adding out.txt
C:\tmp\test>hg commit -m "some work"
C:\tmp\test>hg log
changeset: 0:4631a4a10552
branch: devbranch
tag: tip
summary: some work
는 여기에서 우리는 하나 우리의
devbranch
분기에 커밋합니다. 작업이 완료되면 (이 경우에는 우연히), 우리는 작업을 우리의 (존재하지 않는)
default
브랜치로 병합하고자합니다. 그래서 우리는
null
하기 전에 병합을 수행 업데이트 : 당신이 볼 수 있듯이
C:\tmp\test>hg update null
0 files updated, 0 files merged, 1 files removed, 0 files unresolved
C:\tmp\test>hg merge devbranch
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
(branch merge, don't forget to commit)
C:\tmp\test>hg commit -m "merged"
C:\tmp\test>hg log
changeset: 1:55e879b67c69
tag: tip
parent: -1:000000000000
parent: 0:4631a4a10552
summary: merged
changeset: 0:4631a4a10552
branch: devbranch
summary: some work
C:\tmp\test>hg branches
default 1:55e879b67c69
devbranch 0:4631a4a10552 (inactive)
, 분기 default
두 부모, -1
및 0
을 가진 해당 분기의 첫 번째 변경 집합 생성됩니다.이 후 병합하고자 할 때 default
브랜치의 팁으로 업데이트하면 hg update null
만 처음 수행됩니다.
내 질문에 대한보다 문자적인 대답이기 때문에 받아들입니다. 필자는 Martin에서 실제로 기능을 수행하기 전에 기본 분기에 커밋 할 상용구, 구성 파일, README 등을 가질 가능성이 있음에 동의합니다. 그러나 나중에 기본값으로 병합 할 수 있도록하기 위해 할 필요가 없다는 것을 알면 좋습니다. –
이 답변을 사용해 주셔서 감사합니다. 나는 내 글을 쓸 때 정말로 원했던 것에 대해 의심 스러웠다. 'hg branch default'로 기본 브랜치를 만들 수도 있습니다 ... 내가 볼 수있는 한,'null'로 업데이트하고 펑키 머지를 할 필요가 없습니다 :-) 일반적인 변경 집합은 두번째로'null'을 갖습니다 부모의. 병합 변경 집합에는 부모가 아닌 두 개의 '널 (null)'변경 집합이 있습니다. 첫 번째 부모로'null'을 사용하여 정상적인 변경 집합을 만들었습니다. 결과는'hg branch default '다음에'hg commit'이 뒤 따르는 것과 큰 차이가 없습니다. –
아 좋아요. 나는 디폴트 브랜치가'hg 브랜치 디폴트 '이후에 널이 아닌 부모로 끝난다는 사실을 싫어했다. 물론 null과 병합 한 경우도 마찬가지입니다. 어쨌든, 나는이 토론에서 hg에 대해 조금 더 배웠다. 그것은 굉장하다. 실제로 우리는 분기하기 전에 무언가를 디폴트로 착륙시킬 것이라고 확신 할 것입니다. –