SourceTree는 git-svn 리포지토리를 사용할 수 있습니다.

Mac 최강의 git/Mercurial 클라이언트인 SourceTree 하지만 git-svn한 Subversion 리포지토리도 거의 매끄럽게 취급할 수 있습니다.

아래 방법입니다.

추가



현재의 SourceTree 에서는, 소스 패스에 SVN 리포지터리의 패스를 입력하면, SourceTree 측에서 마음대로 git svn clone 해 줍니다. 즉 아래의 I.의 순서는 불필요합니다. (댓글을 주신 YukiAsu 씨, 감사합니다.)

절차



I. Terminal 에서 git svn clone 한다. ※리포지토리가 데카이와 상당히 시간이 걸립니다.
git svn clone -s http://osmdroid.googlecode.com/svn osmdroid

-s 옵션을 붙이고 있으므로, 마지막/trunk 로 하지 않는 곳이 미소.

II. SourceTree 파일 → 열기에서 I. 폴더를 작업 폴더로 엽니 다.

III. 고란대로, 보통 SourceTree에서 열었습니다.

sourcetree
  • 푸시는 git svn dcommit 와 같은, 즉 SVN 에의 커밋이 됩니다.
  • 풀은 git svn rebase 즉 SVN 로부터의 Update 가 됩니다.
  • 브랜치는 약간의 주의가 필요하며, git 의 로컬 브랜치로 작성할지, SVN 의 브랜치로서 작성할지를 선택하는 다이얼로그가 표시됩니다. 전자를 선택한 경우 SVN에 수동으로 병합해야 합니다.
    sourcetree_branch

  • git svn 의 명령은 보통의 git 와 조금 다른 것입니다만, SourceTree 가 그 근처를 흡수해 주어, SVN 를 리모트 리포지터리라고 생각해 동작합니다.

    어쨌든 SVN 리포지토리의 URL을 SourceTree에서 직접 열면 편리했지만 괜찮을 것입니다.

    SVN의 불편한 부분에 부담없이 로컬 브랜치를 만들 수 없다는 것이 있었기 때문에, git-svn 를 사용하는 것으로 로컬 브랜치 만들기 무제한입니다.

    Mac의 SVN 클라이언트에서 "이것이다!"라는 것이 없었지만 이것으로 만족합니다.

    참고


  • git-svn 사용법 기억 - idesaku blog

  • SourceTree - 뭔가 "Supports SVN via git-svn or hgsubversion"라고 써 있으므로 git-svn 대신에 hgsubversion 이라도 되지 않을 것 같네요.
  • 좋은 웹페이지 즐겨찾기