DVCS에서 커밋을 할 때마다 기술적으로 분기를 만들고 있습니다.이 저장소를 통합 저장소로 되돌릴 때마다 흥미로운 부분이 있습니다.
- 커밋 중에 아무도 변경하지 않으면 DAG의 분기처럼 보이지 않습니다 (지향 비순환 그래프).
- 커밋 중에 다른 사람이 변경 한 경우 DAG의 분기처럼 보이지만 이름이 지정되지 않습니다.
Bitbucket / github의 "포크"버튼을 기억하십시오. 포킹은 분기의 동의어로 간주 될 수 있으며 "포크"버튼의 기능은 해당 리포지토리를 계정에 복제 한 것입니다.
"지점으로 복제"의 유일한 장점은 기록의 두 지점에서 동시에 작업 할 수 있다는 것과 동료를 위해 아이러니 하게 작업 할 수 있다는 것입니다. 서로 다른 지점에서 동시에 작업 할 수있는 일반적인 워크 플로입니다 (앞뒤로 이동하지 않아도 됨). ).
동료에게 분기 방법을 배우도록 지시 하십시오. 매우 쉽습니다. 자습서가 있습니다.
D:\>mkdir lol
D:\>cd lol
D:\lol>hg init
D:\lol>hg branch
default
D:\lol>touch lol
D:\lol>hg add lol
D:\lol>hg commit -m "lol"
D:\lol>hg branch lol
marked working directory as branch lol
(branches are permanent and global, did you want a bookmark?)
D:\lol>hg branches
default 0:35d562fafaf2
D:\lol>echo "lol" > lol
D:\lol>hg commit -m "New lol branch"
D:\lol>hg branches
lol 1:9384f923e78d
default 0:35d562fafaf2 (inactive)
D:\lol>hg branch
lol
D:\lol>hg update default
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
D:\lol>hg branch
default
D:\lol>hg update lol
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
D:\lol>hg branch
lol
D:\lol>hg update default
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
D:\lol>hg branch
default
D:\lol>hg merge lol
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
(branch merge, don't forget to commit)
D:\lol>hg commit -m "lol merge"
D:\lol>hg branch
default
D:\lol>hg update lol
0 files updated, 0 files merged, 0 files removed, 0 files unresolved
D:\lol>hg branch
lol
"지점에 복제"는 서로 다른 지사에서 동시에 작업 하거나 기록에 영구 분기를 만들지 않고 실험 을 시도하고 기존 지사에 다시 통합 할 수있는 경우에 적합합니다. .
나는 개인적으로이 방법을 좋아하지 않으며 필요하다면 가지를하고 닫는 것을 선호합니다. 여기, 이것이 당신이하는 방법입니다 :
D:\lol>hg branches
default 2:46420aca1612
lol 1:9384f923e78d (inactive)
D:\lol>hg branch
lol
D:\lol>hg commit --close-branch -m "Obai, glorious lol branch"
D:\lol>hg branches
default 2:46420aca1612
D:\lol>hg branch
lol
D:\lol>hg update default
0 files updated, 0 files merged, 0 files removed, 0 files unresolved
D:\lol>hg branches
default 2:46420aca1612
D:\lol>hg branches --closed
default 2:46420aca1612
lol 3:4b79c577e029 (closed)
이것이 DVCS 분기 의심을 없애기를 바랍니다. 여기서 지점은 더 이상 무섭지 않습니다.