2024.08.23.금.TIL 로컬에서 commit 한 내역 새로운 브랜치로 옮기기

김기남·2024년 8월 23일
post-thumbnail

안녕하세요, 오늘은 코드카타 진행중에 겪은 로컬에서 commit한 내용을 새로운 브랜치로 옮기는 방법을 정리해 보았습니다.

문제상황

코드카타 완성 내용을 오랜만에 터미널을 이용해서 Local branch 에서 git add . git commit -m까지 한 상황에서 remote branch 에 push 하려고 보니 branch 가 맞지 않아 push가 되지 않았습니다.

해결과정

1. 되돌려야할 작업내역을 확인

git log
위 커맨드를 통해 커밋을 얼마나 되돌려야 하는지 확인

2. 해당 커밋의 작업내역을 unstage

git reset --soft HEAD~1
1 자리에 unstage 할 커밋의 갯수를 입력
위 커맨드를 입력하면 가장 최근 1개의 커밋만 unstaged 상태로 변경

3. 해당 작업 내역을 stash

git stash -u
임시저장 커맨드
다만 git stash 라는 기본 커맨드를 실행하면, untracked files 라고 불리는 파일들이 누락
새로 추가한 폴더, 새로 추가한 파일이나 에셋 등이 해당하는데, 해당 변경사항들이 누락되는 것을 방지하기 위해 -u 를 사용
include untracked 의 약자
git stash list 커맨드로 작업내역이 제대로 저장되었는지 확인
또한 git status 커맨드로 현재 브랜치에 작업내역이 남아있지 않은지 반드시 확인

4. 이동하고 싶은 브랜치로 checkout

git checkout branchname
이동하려던 브랜치로 checkout

5. 작업하려던 브랜치에서 stash 사항 조회

git stash pop
위 커맨드를 사용하면 임시저장했던 내역 중 가장 최신의 내역 조회
git status 커맨드로 작업내역이 제대로 불러와졌는지 확인

6. 이제 다시 commit 을 진행

작업내역이 새로운 브랜치로 옮겨졌으니 commit 을 다시 진행

profile
새로운 시작~!

0개의 댓글