[GIT] git rebase -i 을 활용한 git commit log 합치기

seony·2022년 7월 20일
0
  1. 먼저 git log을 통해 기존의 log 를 보고 합칠 commit log을 개수를 파악한다.

  2. git rebase -i <commit_hash> ~ n 사용하여 여러 commit log을 하나로 합친다.
    <commit_hash> 부터 n개의 commit log을 하나로 합친다는 의미로 n 에는 합치고자 하는 commit log 개수를 명시하면 된다.
    <commit_hash> 부분에는 HEAD로 변경해서 현재 Head 위치부터 명시할 수도 있다.
    이번 예제에서는 <commit_hash>를 명시하여 해당 <commit_hash>부터 6개의 commit log을 합치도록 한다.

:~/test$ git rebase -i 283c166ff519fb53b1227b36357f5893ea71da76~6
[HEAD 분리됨 9c5d1cca1b] [git test] test1
 Date: Tue Sep 13 12:20:23 2022 +0900
 6 files changed, 0 insertions(+), 0 deletions(-)
 create mode 100644 test/test.c
 create mode 100644 test/test2.c
 create mode 100644 test/test3.c
 create mode 100644 test/test4.c
 create mode 100644 test/test5.c
 create mode 100644 test/test6.c
Successfully rebased and updated refs/heads/master.
  1. 2번과 같이 명령어를 입력했을 때 아래 화면과 같은 edit창이 뜬다.

  2. 3번에서 뜬 edit 창에서 대표하는 commit log를 제외한 나머지를 pick에서 squash로 변경한 후 저장한다.
    squash는 commit log을 하나로 병합한다는 의미이다.

  3. 4번에서 저장하고 edit 화면을 종료하면 아래와 같은 edit 화면으로 변경될 것이다.

  4. 대표 commit log의 주석만 남기고 제거 후 저장한다. 이 때 commit log 주석도 변경 가능하다.

  5. git log를 통해 최종적으로 commit log들이 합쳐졌는지 확인한다.

profile
Developer

0개의 댓글

관련 채용 정보