IT knowledge

vim-fugitive git을 vim과 편하게 쓰고 싶다면

정글탐험 2021. 2. 5. 23:38
반응형

vim-fugitive 소개에 앞서서 

vscode를 사용하면 git이 기존적으로 integrated 되어있던 걸로 기억 기억하는데요, 그래서 간단히 파일의 차이점을 비교하고 커밋했던 걸로 기억하고 있습니다. vim의 경우도 플러그인을 설치하면 git을 정말 편하게 사용할 수 있습니다. 바로 vim fugitive를 이용하면 되는데요, 오늘은 vim fugitive를 이용하면 어떻게 git이 편해지는지 알아보도록 하겠습니다.

status and stage with vim-fugitive

커맨드 라인에서 git 상태를 보려면 git ststus 명령어로 보실 텐데요, vim fugitive를 이용하면 :G를 입력하면 됩니다.
그럼 이렇게 나오고 변경이 있는 파일들이 보이고 여기서 바로 스테이지에 올릴지를 쉽게 선택할 수 있습니다. Unstaged에 커서를 올리고 s를 누르면 모든 파일을 다 스테이지에 올리고 파일명에 커서를 올리고 s를 누르면 그 파일 하나만 스테이지에 올립니다.

 

Git status 보는 모습
status를 보고 stage하는 모습

commit with vim-fugitive

원하는 파일을 스테이지에 올렸고 커밋을 하려면 :Git commit을 하면 됩니다. 그럼 바로 커밋 메시지를 입력하는 창이 나오고 커밋 메시지를 입력 후 저장 후 그 버퍼를 종료하면 커밋이 완료됩니다.

 

Git commit 하는 모습
Git commit 하는 모습

push with vim-fugitive

push는 :Git push or GPush로 가능하고 그럼 바로 리모트에 푸시하게 됩니다.

 

Git push하는 모습
Git push하는 모습

 

difftool with vim-fugitive

status를 보던 화면(:Git)에서 파일의 어느 부분이 수정되었는지 살펴보려면 파일명에 커서를 올리고 키보드 dv를 누르면 됩니다. 그러면 이렇게 수정한 부분이 하이라이트 되어서 보기 편하게 보입니다. 오른쪽이 현재 working tree입니다. 여기서 수정할 부분이 있다면 저장하고 저장을 하면 바로 반영됩니다.

 

difftool로 비교하는 모습
difftool로 비교하는 모습

 

blame with vim-fugitive

blame을 이용해서 누가 수정했는지 쉽게 확인이 가능합니다. 하나의 파일을 여러 명이 수정했을 경우에 :Git blame으로 blame을 보면 라인 하나하나를 누가 수정했는지 나오기 때문에 파악이 용이합니다. 누가 수정했는지만 나오는 게 아니라 어떤 커밋에서 수정이 적용되었는지 그 시간이 언제인지까지 나옵니다. 그리고 현재 커밋이 되지 않은 부분도 보여줍니다. 그리고 원하는 커밋에 커서를 올리고 엔터를 누르면 그 커밋에서 무엇이 추가되고 제거되었는지 바로 보는 것이 가능합니다.

 

Git blame 보는 모습
Git blame 모습

 

vim-fugitive 소개를 마무리하며

이 밖에 많은 기능들이 있지만 vim-fugitive를 이용하면 vim에서 git이 편해진다는 것을 보여드리기 위함이므로 이 정도만 보여드려도 vim에서 굉장히 git을 편하게 이용할 수 있게 만들어준 플러그인이라는 생각이 드실 겁니다. 혹시 vim을 이용하시는 분이 계시다면 꼭 이용해 보세요!


공감 눌러주시면 안 그래도 행복한 하루가 더 행복한 하루가 됩니다!

구독하기 눌러주시면 제 글이 발행되면 더 빨리 보실 보실 수 있어요~!

그럼 오늘도 감사합니다!

By 정글탐험


git 관련 다른 포스트들

2021/01/26 - [IT knowledge] - git commit 내역을 조회하기(git log)

2021/01/24 - [IT knowledge] - git merge (병합)에 대한 기초.

2021/01/23 - [IT knowledge] - git local repository와 remote repository 연결하기

2021/01/21 - [IT knowledge] - git stage 수정 및 commit message 수정하기

 

vim관련 다른 포스트

2021/01/19 - [리뷰] - vim 에디터 기본적인 리뷰

반응형