본문 바로가기
Git

Git] vim editor - Edit Multiple Line

by Fastlane 2024. 4. 29.
728x90
반응형

git bash 로 git squash를 하는 경우, 여러 commits를 하나로 합치기 위해서 라인별로 pick -> squash로 수정 후, 저장을 해야 한다. 

 

라인별로 작업하지 않고, 한 번에 수정할 수 있도록 해보자. 

$ git log
commit 7d737ab2aa25cf0a3305a8fdbc3b14e7b2ebcab2 (HEAD -> master)
Author: test
Date:   Mon Apr 29 15:45:02 2024 +0900

    forth commit!

commit 16ddbd4f35f0da695cee79695c6cf368d6358ccf (HEAD -> master)
Author: test
Date:   Mon Apr 29 13:39:04 2024 +0900

    third commit!

commit 6c97b4e128246d953f1864bd971523da5a2ce38b
Author: test
Date:   Mon Apr 29 13:38:35 2024 +0900

    second commit!

commit 02020f952645d911c3f681226590a4f3c42c3f88
Author: test
Date:   Mon Apr 29 13:38:03 2024 +0900

    first commit!

마지막 3 commits을 하나로 합쳐보자

 

git rebase -i HEAD~3

 

Ctrl+v 로 VISUAL BLOCK mode에서 수정하기 원하는 lines을 화살표로 움직여서 선택한다. delete버튼을 눌러 삭제한다. 

Ctrl+V에서 다시 수정하기 원하는 lines을 선택한다. 그 다음 Shift+i 로 insert mode에서 squash를 입력한다. 

Esc 키를 누르면 lines에 squash가 모두 입력이 된 것을 확인할 수 있다. 

 

:wq 입력해서, 저장하고 나오면 된다. 

728x90
반응형

댓글