2017-01-30 18 views
0

多くのソリューション(12+)で共有したいいくつかのコアプロジェクトがあります。tfs2013多くのプロジェクトでプロジェクトを共有

12個のWebサイトがあり、共有バックエンドコアコードを使用しているとします(この場合、共有されたjs、cssまたはビューについては話していません - ビジネスオブジェクト、エンティティなどについて話しています)。 )。

dev、test、prodなどの共有コードのバージョンを特定できるサイトを特定できるようにする必要があります。開発者はウェブサイトのコードを取得して、開発またはパッチを適用するための共有コードを取得できますウェブサイト。

そして、MSビルドサーバーは、展開に使用する共有コードのバージョンを知る必要があります。

これを解決するために、私は人々がそのコアコードを分岐するのを見ています。これは12時間以上するのは不合理なようです。 (私は、ホット・フィックスと実行時間の長いプロジェクトのようなもののために、時にはコアコードを分岐することを期待します。)

を、私はまた、人々は、コアコードのDLLをコピーして、中のものをご確認ください見ている。

を私が思うだろう私のソリューションの依存関係をTFSラベル名に基づいてリストアップするので、開発者は適切なコードで簡単にアプリケーションを稼働させることができ、ビルドサーバがウェブコードとコアコードの適切なバージョンを取得できるtfsラベルが与えられます。私は今もTFS & VS 2013を使用していますので、それがあります。

これを行う方法は簡単で、サポート可能で、スケール可能で直感的ですか?ありがとう - Peter

答えて

0

TFSのラベルは非常に限られています。たとえば、作成したラベルを変更して更新することはできませんでした。コアプロジェクトの1つが更新された場合は、新しいラベルを作成する必要がありましたか?あなたのソリューションの1つに新しいラベルを作成して使用した場合。しかし、このアップデートにはいくつかのバグがあることがわかりましたが、バグを修正するためにコアプロジェクトの最新のアップデートが必要です。新しいラベルが作成されたら、簡単な作業ではないような依存関係を手動で維持する必要があります。

さらに、TFSラベル名に基づいてソリューションの依存関係をリストする方法はありますか? TFSにはこの組み込みオプションがありませんが、唯一の方法はtxtファイルやその他のファイルに格納してソースコントロールをチェックすることです。開発者がウェブサイトアプリケーションを開くたびに、まずそれをチェックし、サーバからワークスペースへのラベルを取得して作業する必要があります。

通常、プロジェクト間でコードを共有する目的は、メンテナンスを削減することです。ソースコードとバイナリの2つのコード共有パスがあります。それらの違いは、このブログを見てみるとよいでしょう:Code Sharing in Team Foundation Server

製品間のコードを共有することは、品質の低下とバグの増加の主原因です。別にビルドすることをお勧めします。またの出力からNuGetを共有するバイナリを共有することをお勧めします。

にも同様の質問下記をご覧取ります

関連する問題