답변:
git checkout old_branch
git branch new_branch
그러면 "old_branch"와 동일한 상태의 새 분기 "new_branch"가 제공됩니다.
이 명령은 다음과 결합 될 수 있습니다.
git checkout -b new_branch old_branch
git checkout -b new_branch
(이미 켜져있는 경우 old_branch
).
git branch copyOfMyBranch MyBranch
이렇게하면 지점을 체크 아웃하는 데 시간이 오래 걸리고 불필요한 작업이 방지됩니다. 체크 아웃은 "작업 트리"를 수정합니다. "작업 트리"는 크기가 크거나 큰 파일 (예 : 이미지 또는 비디오)을 포함하는 경우 시간이 오래 걸릴 수 있습니다.
Git 2.15 (2017 년 4 분기)에서는 " git branch
"을 (를) 배워서 -c/-C
기존 분기를 복사하여 새 분기를 작성했습니다.
Ævar Arnfjörð Bjarmason ( )의 commit c8b2cec (2017 년 6 월 18 일)를 참조하십시오 . Sahil Dua ( )의 commit 52d59cc , commit 5463caa (2017 년 6 월 18 일)를
참조하십시오 . (가 합병 - Junio C 하마노 - 에 3b48045 커밋 2017 03 시월)avar
sahildua2305
gitster
branch
:--copy
(-c
) 옵션을 추가하여--move
(-m
)
--copy
분기 및 해당 참조 및 구성에 기능을 추가합니다 . 이는 참조 대신 이동 및 구성이 복사되는 것을 제외하고--move
(-m
) 옵션 과 동일한 기본 기계를 사용합니다 .이것은 예를 들어, 새로운 버전에 대한 주제 지점을 복사하는 예에 유용
work
하기 위해work-2
제출 한 후에work
는 다른 지점으로가는 모든 추적 정보 및 기타 구성을 보존하고있는 동안, 목록에 항목을--move
주변에 다른 이미 제출 한 분기를 유지 참고.
참고 : 지점을 복사 할 때 현재 지점에 남아 있습니다.
Junio C Hamano는 다음과 같이 설명합니다.
현재 분기 인 분기
B
를 복사하여 새 분기 를 만들면 새 분기 를 가리 키도록A
업데이트HEAD
됩니다.
"때문에 아마 이런 식으로 만들어졌다git branch -c A B
"에서 구현을 피기 백 "git branch -m A B
"이것은 일반적인 기대와 일치하지 않습니다.
파란색 의자에 앉아 누군가가 와서 빨간색으로 다시 칠하는 경우 이제 빨간색 의자에 앉아 끝내는 것을 허용합니다. ).그러나 누군가 내가 앉아있는 파란 의자를 모델링하여 새로운 빨간 의자를 만들면, 나는 파란 의자에서 부팅되어 새로운 빨간 의자에 앉을 것으로 기대하지 않습니다.
git branch -c A B
. 아래 내 답변