私は汎用のsvngit->
移行スクリプトを作成中です。これにより、標準よりもはるかに多くのことが可能になります。git svn clone
スクリプトの1つの段階で、移行リポジトリ内のすべてのブランチの出力git svn show-externals
を確認しています。git svn show-ignore
これらのコマンドの出力に応じて、さまざまな手順を実行します。
私の問題は、スクリプトの残りの部分がかなり高速に実行される一方で、特にこれら2つのコマンドが実行時間の大部分を占めているように見えることです。場合によってgit svn show-externals
は、実行に10分以上かかることがあります(約5000ファイルを含むリポジトリで)。10以上のブランチを持つこのサイズのリポジトリで実行する場合、これがかなり加算されることを想像できます。
この操作の実行に時間がかかるのはなぜですか?実行を高速化するために私にできることはありますか?