VS Code를 Git diff tool로 설정하기

박승호 Seungho Park
3 min readMar 20, 2020

--

이번 포스팅 에서는 VS Code를 git difftool로 설정하는 방법에 대해서 설명합니다. Mac을 기준으로 설명하지만, Windows, Linux에서도 크게 다르지 않습니다.

VS Code command 인스톨

  1. Command line 에서 code --help 가 동작하는지 확인합니다.
  2. 동작하지 않으면, 맥 환경에서는 VS Code 의 Command Palette(⇧⌘P)에서 Shell Command: Install ‘code’ command in PATH를 선택합니다. 윈도우즈의 경우 VS Code 인스톨 시 “Add to PATH”를 선택해야 합니다.
  3. Command line 에서 다음을 입력합니다.
    git config --global core.editor "code --wait"
VS Code Command Palette 에서 Shell Command: Install ‘code’ command in PATH 선택

이제 다음과 같이 입력하면 VS Code를 Git config 에디터로 사용할 수 있습니다. git config --global -e

Git configuration

위의 명령어를 입력하거나, ~/.gitcofig 파일을 에디터를 이용하여 직접 엽니다. 그리고 아래와 같은 설정을 추가해 줍니다.

[diff]
tool = default-difftool
[difftool "default-difftool"]
cmd = code --wait --diff $LOCAL $REMOTE

--wait 옵션은 Command line으로 VS Code를 실행시켰을 경우 VS Code 인스턴스를 닫을 때 까지 command를 대기 시킵니다. Command line으로 실행한 VS Code의 window를 닫으면 command가 다시 활성화 됩니다. VS Code를 Git 외부 편집기로 사용할때 편합니다. --diff 옵션을 사용하여 두 파일을 비교합니다.

이제 여러분이 코드 수정을 하다가 git difftool 명령을 입력하면 VS Code를 통하여 diff가 실행되는 것을 볼 수 있습니다.

Merge tool 설정

VS Code를 merge tool 로도 활용하고 싶으면, git config 에 다음 설정을 추가하면 됩니다.

[merge]
tool = vscode
[mergetool "vscode"]
cmd = code --wait $MERGED

마치며

VS Code 가 점점 저의 all-in-one 개발툴이 되어 가고 있습니다.(미안 Sublime Text)특히나 Git, Github와 연동이 편리하고, 터미널 통합 및 다양한 extention 으로 web-frontend 개발에서 이 보다 나은 툴을 찾기 힘듭니다. git diff 툴로 VS Code를 활용하고자 하는분께 이 포스팅이 도움이 되기를 기대합니다.

--

--

박승호 Seungho Park

LG webOS Platform engineer. enactjs.com App Framework Lead. Interested in making web native-quality