Nice programing

한 분기에서 다른 분기로 변경 사항을 이동하는 방법 git?

nicepro 2020. 12. 30. 20:24
반응형

한 분기에서 다른 분기로 변경 사항을 이동하는 방법 git?


작업 및 변경 사항을 master분기에서 새로 만든 분기로 이동하고 이동 후 마스터 분기를 그대로 두려면 어떻게해야합니까?


사용하여 현재 커밋을 가리키는 새 분기를 만들 수 있습니다 git branch branchname(또는 git checkout -b branchname직접 확인하려는 경우). 이것은 기본적으로 마스터 브랜치를 복제하므로 계속 작업 할 수 있습니다.

브랜치를 성공적으로 복사 한 경우 마스터에서 마지막 커밋해야하는 커밋의 해시 위치 master를 사용하여 원래 지점으로 재설정 할 수 있습니다 .git reset --hard commitcommit

예를 들어 다음과 같은 상황이 있습니다.

---- 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


크리에이트 새로운 당신이해야하는 위치에서 분기를하고 체리는 새로운 지점에 잘못된 분기에 변경을 선택합니다.

그런 다음 다른 곳에 푸시하지 않았고 다른 변경 사항이 적용된 경우 잘못된 분기 를 삭제할 수 있습니다 .

참조 URL : https://stackoverflow.com/questions/8085838/how-to-move-the-changes-from-one-branch-to-another-branch-git

반응형