MR 올리기 전 여러 커밋을 한꺼번에 합친 squash 로 올리려 한다. (추후 cherry-pick 할 때에도 용이)
Git Squash는 여러개의 Commit을 하나의 Commit으로 만들어준다.
방법은 아래와 같다.
1.rebase (최근 3개 커밋 합치려면 아래처럼 작성)
git rebase -i HEAD~3
2.그럼 아래와 같이 뜸
pick abc123 First commit message
pick def456 Second commit message
pick ghi789 Third commit message
여기서 첫 번째 커밋을 제외한 나머지 커밋의 pick을 squash 또는 s로 변경한다.
다음과 같이 변경.
pick abc123 First commit message
squash def456 Second commit message
squash ghi789 Third commit message
>>위와 같이 수정후 etc키 누르기> 맨아래에 가서 :wq 입력 후 enter키 누르면 저장됨
3. 커밋 메시지 수정
제일 위 커밋메시지만 남기고 나머지는 지우고, 메시지를 원하는 것으로 수정하고 저장한다.
소스트리로 확인 시 맨 위와 같이 아래(빨간점 2개)내용이 반영되어 squash된 것을 확인가능(현재 빨간점2개 커밋들은 origin 깃에 이미 올라간 시점이었음)
* 만약 잘못 커밋 올렸으면 git commit --amend 입력 후 메시지 수정 후 저장 누르면 된다.
4. git log 로 반영 확인
5. 강제 푸쉬 올리기
git push origin feature/popup --force
참고사이트)
'Git' 카테고리의 다른 글
유데미 -Git으로 만드는 전설의 레시피 (branch생성,merge,PR) (0) | 2022.10.23 |
---|---|
유데미 -Git으로 만드는 전설의 레시피 (GitHub원격저장소에 올리기) (0) | 2022.10.23 |
[Git] VS code 확장프로그램 설치 - Git Graph (0) | 2022.07.05 |