SVNの特定のフォルダを既にあるGitのレポジトリのブランチとして移行する手順
タイトルがわかりにくいですが、要するにgit-svnです。
環境
Windows 7 64bit
手順
まず、どこでもいいのでフォルダを作っておきます。
mkdir test
今回のSVNレポジトリがfile:/// でアクセスしていたのでエラーが表示されました。
解決策
d.hatena.ne.jp
d.hatena.ne.jp
別窓で下記を実行しておく。
対象のディレクトリは該当のレポジトリがあるディレクトリのところまで。
svnserve.exe -X --root \\NAS\repository
その後git-svnを実行。今回はブランチ等存在していないので、そのままで。
git svn clone svn://localhost/test
完了後、同一ディレクトリに新たにフォルダを作成。
mkdir test_sub
cloneします。
git clone test test_sub
指定したディレクトリのみ抽出。
cd test_sub git filter-branch --subdirectory-filter [移行したいフォルダ名] -- --all
作成したいブランチ名に変更。
git branch -m [作成したいブランチ名]
確認します。
git branch -a
あとはpushするだけ。
git remote rm origin git remote add origin [remoteURL] git push --all
所感
かなり変則的なやり方になったが、そのフォルダの歴史も引き継げているのでどうにか出来たっぽい。
結構複雑だったが、まとめたらたいした事なかった。