0

参照されたアセンブリを TFSBUILD プロセスで使用できるようにするために、これらのアセンブリ用に別のチーム プロジェクトを設定しました。アセンブリを必要とするソリューションを使用して、アセンブリを各チーム プロジェクトに分岐します (以下ではtargetと呼びます)。これは、私が理解している限り、それを行う通常の方法です

今、私たちはその平野が機能しないところまで来ました。ターゲット自体が分岐していると仮定すると、TFS では、ここでアセンブリの分岐を作成することはできません。

ブランチ内のブランチが問題になる可能性がある場所はなんとなくわかりますが、なぜそのような操作がサポートされていないのか、本当に疑問に思っています。そのような要件を持っているのは私たちだけではありませんよね?

最初に頭に浮かんだのは、ターゲットのブランチの範囲外のどこかにアセンブリをブランチすることでした。

Target
    |__Br1
    |__Br2
    |__Assemblies

それにもかかわらず、ブランチが同じアセンブリ ( Br1:NHibernate 2.1、 などBr2:NHibernate 3.2) の異なるバージョンを必要とする場合、製品の更新がよく行うように、これも何か醜いことにつながります。最終的には、これを行うにはNH2.1NH3.2を別の製品として扱う必要があります...

私たちが試みているように分岐することを可能にするパターンを知っている人はいますか?

4

1 に答える 1

1

この問題に対処するには、常に次の 2 つの方法があります。

  1. ブランチ内のフォルダー (これが最良の方法であり、プロジェクト ファイルで -tags を使用して、各ブランチ内のアセンブリの特定の場所を参照できる場所が推奨されます。つまり、各ブランチはアセンブリの独自のコピーを取得します。
  2. Team-Project のフォルダー (あなたが行ったように) - あなたも使用できますが、異なるブランチで異なるサードパーティ ツール バージョンを扱うことはできません。

ですから、解決策があなたにとって無痛ではないことはわかっていますが、私の意見では可能性は限られています. 私たちのプロジェクトでは最初のバリアントを使用していますが、それは分岐戦略にも依存します。

于 2012-04-16T12:54:35.967 に答える