SourceTree は git-svn したリポジトリも使えます

Mac 最強の git/Mercurial クライアントである SourceTree ですが、git-svn した Subversion リポジトリもほとんどシームレス い扱うことができます。

以下、方法です。

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クライアントで「これだ!」というのがなかったのですが、これで満足です。

##参考