내 맘대로 비교하기: SubGit vs git-svn

svn 은 그 자체로 훌륭한 VCS 이지만, 로컬에서 패치를 관리해야 하는 순간, 지옥의 나락으로 떨어진다. 이를 해소하기 위한 방법에 git 가 있다. git 는 자체적으로 svn 저장소에 접근할 수 있는 기능이 있다. 바로 git-svn 이다. 이를 이용하면 svn 클라이언트가 없더라도 git 를 이용해서 svn 저장소를 관리할 수 있다. 그런데 불행히도 내가 주로 사용하는 OS/2 에서는 git-svn 이 제공되지 않고 있다. 이렇다 보니, git-svn 을 대신할 프로그램이 필요했는데, SubGit 이라는 프로그램이 있었다. 예전에는 SubGit 을 이용해서 svn 저장소를 git 저장소로 바꾸는데 이용했었는데, 이번에는 svn 저장소에 지속적으로 접근할 필요가 있었다. git-svn 처럼 SubGit 도 이런 기능을 제공하고 있었다. 그렇다면, git-svn 과 SubGit 중에 어느 것이 더 괜찮을까 ? 각각의 장단점을 간단하게나마 살펴보자. git-svn git-svn 은 git 가 대부분의 OS 에서 기본적으로 지원하고 있다. 따라서 별도의 프로그램이 필요없고 svn 저장소를 직접 접근하므로 별도의 저장소가 필요없다는 장점이 있다. 하지만 git-svn 은 기존의 git 명령 체계와는 다른 별도의 git-svn 명령 체계를 써야 한다는 점이 불편한다. 자칫 잘못해서 git-svn 대신 git 명령을 사용하면 로컬 저장소가 엉망이 될 수도 있다. SubGit SubGit 을 쓰기 위해서는 Java 1.6 이상이 필요하다. git-svn 과는 달리 별도의 프로그램이 필요하다는 것이 단점일 수 있겠지만, Java 는 이미 기본 프로그램으로 자리잡고 있으므로, 큰 문제는 아니라고 본다. 하지만 더 큰 문제는 git-svn 과는 다르게 SubGit 은 별도의 git 저장소를 만든다는 점이다. 따라서 SubGit 은 두 개의 저장소가 필요하다. 하나는 svn 저장소를 git 형태로 바꾼 git 서버 저장소. ...