バージョン管理なしでかなり長い間作業した後、古いプロジェクトの 1 つを再構築し、TFS の操作方法を学ぼうとしています。今のところ、次の(簡略化された)構造があります。
$/Application
$/Application/Main (Branch)
...
$/Application/Main/Source
$/Application/Main/Source/Application
$/Application/Main/Source/SharedBinaries
$/Application/Main/Source/SharedSource
$/Application/Main/Source/SharedSource/Library1
$/Application/Main/Source/SharedSource/Library1/Include
$/Application/Main/Source/SharedSource/Library2
$/Application/Main/Source/SharedSource/Library2/Include
$/Application/Main/Source/Tool1
$/Application/Main/Source/Tool2
...
$/Application/Development (branched from Main)
のソースコードは にApplication
存在し、ファイル$/Application/Main/Source/Application
などのバイナリ依存関係は に保存されます。には、使用するライブラリごとにディレクトリが必要です。現在、これらはサードパーティのライブラリであり、必要なインクルード ファイルのみを提供し、ソースコードはまったく提供していません。*.lib
*.dll
$/Application/Main/Source/SharedBinaries
$/Application/Main/Source/SharedSource
という共通ライブラリ用の新しいチーム プロジェクトを作成したいと考えていますClassLibrary
。はそれApplication
を使用しますが、ライブラリを直接統合するような他のアプリケーションも同様に、適切な設計とは言えません。アプリ自体と同様に、次の階層があります。
$/ClassLibrary
$/ClassLibrary/Main (Branch)
...
$/ClassLibrary/Main/Source
$/ClassLibrary/Main/Source/ClassLibrary
...
$/ClassLibrary/Development (branched from Main)
私の最初の試みは、ライブラリを更新するように分岐$/ClassLibrary/Main/Source/ClassLibrary
する$/Application/Main/Source/SharedSource
ことでした。他のすべてのプロジェクトは、開発をメインにマージするなどの更新されたバージョンを取得しますが、これは機能せず、これを正しく構造化する方法がわからないことを示しています。さまざまなチーム プロジェクトの境界を越えて、そのような共有コンテンツとライブラリを処理する一般的なアプローチは何ですか?
注意: はい、この質問は、昨日質問した質問の別のバージョンであり、これを完全に更新するために削除しました。