728x90
반응형
질문 : 현재 변경 사항으로 Git 분기 만들기
나는 내 작업이 쉬울 것이라고 생각하면서 마스터 브랜치에서 일하기 시작했습니다. 잠시 후 더 많은 작업이 필요하다는 것을 깨달았고이 모든 작업을 새 지점에서 수행하고 싶습니다.
새 브랜치를 생성하고 더티 마스터 없이이 모든 변경 사항을 적용하려면 어떻게해야합니까?
답변
아직 커밋하지 않았다면 (1 : 브랜치)와 (3 : 체크 아웃)만으로 충분합니다.
또는 하나의 명령으로 : git checkout -b newBranch
git reset
man 페이지 에서 언급했듯이 :
$ git branch topic/wip # (1)
$ git reset --hard HEAD~3 # (2) NOTE: use $git reset --soft HEAD~3 (explanation below)
$ git checkout topic/wip # (3)
git reset --hard
명령의 "파괴적"효과로 인해 <commit>
이후 작업 트리에서 추적 된 파일에 대한 모든 변경 사항은 삭제됨) 다음과 같이 진행합니다.
$ git reset --soft HEAD~3 # (2)
이렇게하면 인덱스에 추가되지 않은 개인 파일이 손실되지 않습니다.--soft
옵션은 인덱스 파일이나 작업 트리를 전혀 건드리지 않습니다 (그러나 모든 모드와 마찬가지로 <commit>
Git 2.23+ 에서는 새로운 명령 git switch
는 한 줄에 브랜치를 생성합니다 (동일한 종류의 reset --hard
하므로 그 효과에주의하십시오).
git switch -f -c topic/wip HEAD~3
출처 : https://stackoverflow.com/questions/3899627/create-git-branch-with-current-changes
728x90
반응형
'개발관련 > Git' 카테고리의 다른 글
커밋 푸시를 위해 GitHub 자격 증명을 캐시하는 방법 (0) | 2021.12.15 |
---|---|
Git 저장소에서 삭제 된 파일을 찾고 복원하는 방법 (0) | 2021.12.14 |
git 히스토리에서 큰 커밋을 찾고 식별하는 방법 (0) | 2021.12.14 |
GitHub에서 분기 된 저장소를 업데이트하거나 동기화 하는 방법 (0) | 2021.12.13 |
“git commit”과“git push”의 차이점 (0) | 2021.12.13 |