GitソースコードベースからTFSリポジトリを生成する必要があり、元のコミット履歴を保存したいので、TFSチェンジセットを作成するはずのTf-Git「git tf checkin --deep」コマンドを使用しようとしました各 Git コミット。
残念ながら、Git リポジトリ内の多くのコミットにはマージのために 2 つの親があり、TFS ではコミット履歴をインポートできるようにするためにコミット履歴が線形である必要があるため、このステップは失敗します。したがって、次のエラーが表示されます。
git-tf: cannot check in - commit 2b15822 has multiple parents, please rebase to form a linear history or use --shallow or --autosquash
これは理解できます。しかし、既存の Git リポジトリにそのようなコミットの長いチェーンがある場合、どうすればよいでしょうか? 手動でコミット履歴を修正するのに 1 日か 2 日を費やすことができることはわかっていますが、それは私たちが日々を費やしたいことではありません。コミット履歴を線形に修正する自動化された方法はないことを正しく理解しているのでしょうか?手作業に何時間も費やしたくない場合は、履歴全体を単一の変更セットとしてインポートするだけでよいでしょうか?