svnのリポジトリからgit cloneするには
たとえば、svnのリポジトリhttp://server/svn/trunk/repoをgitで扱いたい場合、
[shell]git svn clone http://server/svn/trunk/repo[/shell]
とやれば、svnのリポジトリをgitとして扱うことが出来ます。
gitでtagやbranchなども使ってsvnリポジトリを扱いたい場合
[shell]git svn clone -s http://server/svn/trunk/repo[/shell]
とすれば、ブランチやタグの情報も取得出来るようになります。
ただし、
http://server/svn/trunk/repo
http://server/svn/branches
http://server/svn/tags
という構成になっていないと
よろしくやってくれないようです。
通常と違う構成でsvnを使っている場合、-sオプションでは無く
[shell]git svn clone –trunk=<trunkのパス> –tags=<タグのパス> –branches=<ブランチのパス> <リポジトリURL>[/shell]
というオプションでそれぞれのパスを指定すれば、よろしくやってくれるようです。
git svn cloneしたローカルリポジトリには、通常通りgit commitなどで作業が出来ます。
ただし、svnリポジトリにpushする時には
[shell]git svn dcommit[/shell]
を使用します。
そして、svnリポジトリから更新を取得するには
[shell]git svn rebase[/shell]
を使用します。
svn上のブランチの一覧を取得するには
[shell]git svn branch -r[/shell]
ブランチに対して作業する場合
[shell]git branch local-my_repo my_repo[/shell]
とすることで、my_repoブランチを手元のローカルブランチに作成する
さらに、そのローカルブランチをチェックアウト
[shell]git checkout local-my_repo[/shell]
あとは作業してコミットしたり
pushは、先ほどと同様に
[shell]git svn dcommit[/shell]
ブランチの作業が終了すれば
[shell]git checkout master
git branch -d local-my_repo[/shell]
とすれば良い
タグも同様