AnkhSvn을 다시 조명하다

  • Post Author:
  • Post Category:
  • Post Comments:10 Comments
  • Post last modified:February 8, 2020

AnknSvn은 비주얼 스튜디오의 애드인으로 작동하는 서브버전(Subversion) 클라이언트다. 꽤 오래된 오픈 소스 프로젝트인데 불과 1년 전만 해도 버그가 많았다. 참기 힘들 정도여서 사용하지 않았다. 그러다가 서브버전  최신 릴리즈를 다운로드 받으러 갔다가 AnknSvn 프로젝트 링크를 보고 따라 들어갔다. 그런데 이게 웬일? 프로젝트 홈페이지가 COLLABNET에 연결되어 있었다. 이 회사로 말하자면 서브버전이 지금의 모습을 갖추는데 지대한 공헌을 한 회사가 아닌가? 도메인을 봐선 COLLABNET 사가 이 프로젝트를 지원하는 게 틀림 없었다.

AnkhSvn을 탑재한 Visual Studio 2008의 모습

일주일 간 AnknSvn을 Visual Studio 2008에 설치해 써 본 감상은 “매우 만족스럽다”. 새 소스코드는 Add해주고, 소스코드를 지우면 delete해 준다. 여기까진 이전에도 큰 문제 없었다. 그러나 소스코드의 경로를 바꿨을 때 기존 경로를 delete하고 새 경로를 Add하는 기능은 예전에 제대로 작동하지 않았던 것이다. Commit이나 Revert야 당연한 기능이겠지만, Pending Changes는 매우 단순하면서 유용한 기능이다. 여태까지 변경한 파일을 한눈에 볼 수 있으니 말이다.

설정하기

매뉴얼을 보면 TortoiseMerge.exe와 TortoiseDiff.exe를 연동하는 법이 나와 있다. 그러니 이에 대해선 언급하지 않고 WinMerge를 외부 Diff 도구로 쓰는 법만 적는다.

"C:\Program Files (x86)\WinMerge\WinMergeU.exe" -e -x -ub -dl "%bname" -dr "%yname" "%base" "%mine"

위의 코드를 [비주얼 스튜디오 – 도구 – 옵션 – Source Control – Subversion]에 적으면 된다.

문제점

AnkhSvn과 Visual Assist X의 충돌

안타깝게도 Visual Assist X과 AnknSvn이 충돌을 일으키는 기능이 하나 있다. 바로 커밋! 커밋할 때 Visual Assist X이 커밋 로그 창에 함수 목록을 보여 주려 하고 이 때문에 글자가 안 써 진다. Visual Assist를 끄던가, 메모장에 로그를 써서 커밋 로그 창에 붙여넣어야 한다.

Buy me a coffeeBuy me a coffee

최 재훈

Kubernetes, DevSecOps, Golang, 지속적인 통합 등 다양한 주제에 관심이 많다.