Post

TortoiseGit 에서 DiffTool 로 VSCode 사용하기

혹시 Git GUI Client 를 뭘 쓰는가? Diff Tool 은 또 뭘 쓰는가? 난 Java / Kotlin / Web 개발을 할땐 IntelliJ 에 내장 되어 있는 GitGUI 와 Diff Tool 을 사용한다.

하지만.. Visual Studio 2022의 Git Gui 는 내 기준으론 정말 노답이라고 생각한다… 아 Diff 기능은 좋다. 싸잡아서 나쁜것은 아니다. 매 업데이트 때 마다 Git 기능 개선을 쳐다보고 있지만 오랫동안 별 변화가 없다가(github 왜샀냐) 17.4 에서 뭔가 개선이 있다고 해서 기대중이다.

하지만 어쨋든 Visual Studio 로 개발할 때만은 아직 난 GUI Client 를 별도로 사용 하는 편인데, 다음과 같이 변해 왔다. TortoiseGit -> SmartGit -> 유료화로 인해 GitKraken -> 유료화로 인해 TortoiseGit 으로 컴백하여 아직도 쓰고있다. SourceTree 는 초기버전이 더럽게 느리다는것 + 뭔가 UI 가 맘에 안들어서 쓰고 있지 않다. 특히 내가 원하는건 파일을 더블클릭하면 Diff 가 크게 뜨는건데 더블클릭으로 External Diff 를 호출하는 옵션은 없고, 좁은 화면으로 보려니 속터져서 안쓰고 있다.

그럼 뭐 툴은 그걸로 됐다 치는데… Diff 가 문제다. 왜냐면 기본으로 내장된 TortoiseGitMerge 는 기능적으론 훌륭하지만 UI가 정말 쓰레기 같기 때문이다. 안이뻐서 쓰고싶어지지 않는다. 그래서 난 DiffTool 도 별도로 세팅해서 쓰고 있었는데… BeyondCompare를 쓰다가, 나중에 Araxis Merge로 교체 하게 된다. 그러나 둘다 기능적으로 정말 훌륭하긴 한데… 문제가 코드 비교 기능은 별 개선도 없고 쓰지도 않을 잡다한 기능만 계속 늘어난다는 거다. 거기에 더이상 돈을 쓰고 싶지 않았다. 하지만 별 다른 대안이 없어서 계속 쓰고있었는데… VSCode 업데이트를 보다가 새로운 Merge UI 와 Diff 알고리즘을 시험한단 얘기가 있었고, 시험삼아 한번 세팅을 해서 써보기로 했다.

Tortoise Git 에 Diff Tool 을 External 로 선택하고 다음을 넣는다. 저기 있는 lyn 은 내 Windows Account 니까 알아서 조정 해라

1
"C:\Users\lyn\AppData\Local\Programs\Microsoft VS Code\bin\code.cmd" --wait --diff %base %mine 

결과는… 대만족이었다. 뜨는 속도가 살짝 느린 감은 있지만, 코드 컬러링도 내가 원하는대로 마음대로 세팅할 수 있고 Diff 알고리즘도 매우 훌륭하다.
Image

더이상.. Diff 툴을 돈주고 살 일은 없을것 같다. MS가 중소기업 여럿 골로 보내는구나.

This post is licensed under CC BY 4.0 by the author.