その質問が行われてからの主な変更点 (2013 年第 4 四半期) は、TFS 2015/2017 が Git リポジトリを公式にサポートするようになったことです。「Git と TFS」を参照してください。
したがって、合理的なアプローチは次のようになります。
- git-tfsなどのツールを使用して、既存の TFS プロジェクト履歴を新しい Git リポジトリにエクスポートします。
- その Git リポジトリを 1 つのメイン コードベースといくつかの小さなリポジトリに分割し、それぞれが他の貢献者にアクセスしてもらいたい部分を表します。
- これらのサブリポジトリをメイン コードベースのサブモジュールとして参照する
- 最後に、TFS プロジェクトを (今回は Git リポジトリを使用して) 作成し、これらのリポジトリを TFS サーバーにプッシュ バックします。
これにより、TFS プロジェクトのコレクションが残ります。各プロジェクトは特定のチームに開かれ、特定の部分のみが他の貢献者に表示/アクセスできるようになります。
そしていつでも; メインの coderepo リポジトリから、これらのサブモジュールを次のように更新できます。
git submodule update --recursive --remote --rebase
(そして、テスト、追加、コミット、プッシュ: メインの Git リポジトリは、これらのサブモジュールの最新の開発を参照します)
さらに、l--''''''---------''''''''''''
の前の質問を考慮すると、ファイルが多すぎる単一のレポに役立ちます。
ただし、そのために、すぐに(らしい) GVFS が登場します。
で言及されている代替アプローチl--''''''---------''''''''''''
は次のとおりです。
私は個人的に、自分の変更に GIT を使用できるようにしたいと考えています。GIT に複数の変更セットがあり、それらを 1 つにマージしてから、その変更セットを従来の TFS 変更セットに変換してチェックインします。 TFSアイテムごとに1回のチェックイン
Git のコミット履歴を 1 つの TFS 変更セットに集約するときに、中間の Git コミット履歴を失うことを気にしないのであれば、それは可能です。