한 분기에서 다른 분기로 변경 사항을 이동하는 방법 git?
작업 및 변경 사항을 master
분기에서 새로 만든 분기로 이동하고 이동 후 마스터 분기를 그대로 두려면 어떻게해야합니까?
을 사용하여 현재 커밋을 가리키는 새 분기를 만들 수 있습니다 git branch branchname
(또는 git checkout -b branchname
직접 확인하려는 경우). 이것은 기본적으로 마스터 브랜치를 복제하므로 계속 작업 할 수 있습니다.
브랜치를 성공적으로 복사 한 경우 마스터에서 마지막 커밋해야하는 커밋의 해시 위치 master
를 사용하여 원래 지점으로 재설정 할 수 있습니다 .git reset --hard commit
commit
예를 들어 다음과 같은 상황이 있습니다.
---- 1 ---- 2 ---- 3 ---- 4 ---- 5 ---- 6
^ ^
original master
master commit
당신이 체크 아웃 한 그래서 master
에 커밋 6
, 당신은 새로운 지점 생성 할 ticket
것을 가리키는 6
재설정 동안 master
로를 3
:
git branch ticket
git reset --hard 3
git checkout ticket
그리고 당신은에있어 ticket
커밋을 가리키는 6
반면, master
점에 3
.
변경 사항이 커밋되지 않은 경우.
마스터 브랜치에 변경 사항을 숨길 수 있습니다.
git stash
그런 다음 지점을 확인하십시오.
git checkout -b newbranchname
여기에 변경 사항을 표시합니다.
git stash pop
변경 사항이 커밋 된 경우 :
그런 다음 분기를 만듭니다.
git checkout -b newbranch
마스터 브랜치로 다시 체크 아웃 :
git checkout master
이전 커밋으로 재설정 :
git reset --hard head^1
브랜치에 있어야 함을 깨달은 후 두 번 커밋했다면 간단히
git branch work_branch
git reset --hard HEAD~2
2를 되돌리려는 커밋 수로 바꿉니다. 이 시점에서 여전히 마스터 상태입니다. 작업을 계속하기 위해 브랜치로 이동하려면git checkout work_branch
다음 git rev-parse --help
과 같은 참조로 커밋 트리를 백업하는 방법에 대한 구문을 이해하고 싶은지 확인하십시오.HEAD~2
크리에이트 새로운 당신이해야하는 위치에서 분기를하고 체리는 새로운 지점에 잘못된 분기에 변경을 선택합니다.
그런 다음 다른 곳에 푸시하지 않았고 다른 변경 사항이 적용된 경우 잘못된 분기 를 삭제할 수 있습니다 .
'Nice programing' 카테고리의 다른 글
최소 높이는 본문에서 작동하지 않습니다. (0) | 2020.12.30 |
---|---|
다형성 모델 바인딩 (0) | 2020.12.30 |
좋은 + 무료 + 경량 + Linux UML 디자인 도구가 있습니까? (0) | 2020.12.30 |
'$ (this)'비용은 얼마입니까? (0) | 2020.12.30 |
클래스 대 공개 클래스 (0) | 2020.12.30 |