コミットを維持しながら、gitリポジトリを取得して既存のSubversionリポジトリに新しい(任意の深くネストされた)ディレクトリとしてインポートする方法がありますか?歴史?例えば履歴を維持しながらSubversionリポジトリのサブディレクトリにインポート
、私は以下の(簡体字)のディレクトリ構造とsubversionのレポを持っている場合:
backends
backends/A
backends/B
と私はGitのレポに新しいバックエンドCに取り組んできましたが、私は今、追加したいですbackends/C
としてsvnリポジトリにgit repoの内容。
私が見つけたほとんどの情報は、トップレベル(一般に新しく作成された、またはそれ以外の場合は空のsvnレポ)にインポートすることに焦点を当てているようです。
私の現在のアプローチは、GitのSVNとGitのリベースを使用backends/C
git filter-branch --index-filter \
'git ls-files -s | sed "s-\t\"*-&newsubdir/-" |
GIT_INDEX_FILE=$GIT_INDEX_FILE.new \
git update-index --index-info &&
mv $GIT_INDEX_FILE.new $GIT_INDEX_FILE' HEAD
までのgitリポジトリの既存のトップレベルをプッシュするgitのフィルタ分岐のmanページから次のコードを使用することですsvn repoにファイルを取得します。ほとんどの人がそれをやっているのでしょうか、それとも「良い」方法がありますか?
svnサブディレクトリのgit-svnを指し示すとうまくいきました。ありがとうございます。 –