Dev

git squash 사용법

DevOps Engineer 2024. 8. 15. 10:26
728x90

git squash는 여러 개의 커밋을 하나로 합칠 때 사용하는 방법입니다. 이 작업은 보통 git rebase 명령어를 사용하여 수행됩니다.

 

1. 기본 브랜치로 이동

먼저, 커밋들을 합칠 브랜치로 이동해야 합니다.

$ git checkout 브랜치이름

예를 들어, feature-branch 브랜치에서 작업 중이라면:

$ git checkout feature-branch

2. git rebase 명령어 사용

이제 여러 커밋을 하나로 합칠 수 있습니다. 가장 최근의 n개의 커밋을 합치기 위해 아래 명령어를 사용합니다.

$ git rebase -i HEAD~n

여기서 n은 합치고 싶은 커밋의 개수입니다. 예를 들어, 최근 3개의 커밋을 합치고 싶다면:

$ git rebase -i HEAD~3

3. pick을 squash로 변경

명령어를 입력하면 텍스트 편집기가 열리고, 최근 n개의 커밋 리스트가 나타납니다. 이 리스트에서 기본적으로 모든 커밋은 pick으로 표시됩니다.

예를 들어:

pick 1234567 First commit
pick 89abcdef Second commit
pick 13579bdf Third commit
 

여기서 두 번째 커밋 이후의 pick을 squash로 변경합니다:

pick 1234567 First commit
squash 89abcdef Second commit
squash 13579bdf Third commit

이렇게 하면 첫 번째 커밋에 두 번째와 세 번째 커밋이 합쳐집니다.

4. 커밋 메시지 수정

pick과 squash를 지정한 후 편집기를 저장하고 닫으면, 커밋 메시지를 편집할 수 있는 창이 나타납니다. 여기서 최종적으로 남길 커밋 메시지를 입력하고 저장합니다.

5. rebase 완료

모든 과정이 끝나면 git rebase가 완료되고, 선택한 커밋들이 하나로 합쳐집니다.

728x90