19

TFS 2010では、次の分岐構造の使用を開始しました。

ALMレンジャーズの基本的な分岐構造

これまでのすべての変更は開発ブランチで実行され、すべてのチェックインはタスク作業項目に関連付けられています。タスクはすべて、バグまたは製品バックログアイテムワークアイテムのいずれかの子です。各CIビルドは特定のチェンジセットに対してトリガーされ、チェンジセットはタスクに関連付けられているため、ビルドされたばかりのバグまたはPBIを手動で特定できます。

コードがビルドされ、統合環境にデプロイされ、開発者によってテストされた後、しばらくして、コードはメインブランチにマージされます。明らかに、複数のチェンジセットを同時にメインにマージすることができます。その前にナイトリーを手動でトリガーしない場合、ナイトリービルドはこのコードをビルドします。QAは、後でこれらの「メイン」ビルドの1つをQA環境にデプロイします。

QAが最後にデプロイされてから、メインブランチのビルドがいくつかあった可能性があります。これらのビルドは、タスクに関連付けられていた元のチェンジセットではなく、「マージ」チェンジセットに関連付けられています。

タスク作業項目に関連付けられているものとは異なるブランチのビルドである、特定の「メイン」ビルドによってアドレス指定されたタスクのセットを判別するにはどうすればよいですか?

リリースの準備を開始したら、リリースブランチで変更を加える必要がある場合があります。これにより、リリースからメインにマージされ、リリースチェンジセットがタスクに関連付けられるため、事態はさらに複雑になります。その後、それらは開発に統合され、人生がさらに面白くなります!


PS「TFS2010のソースブランチに関連付けられている作業項目を特定する方法」という質問は、同じ質問に近いものですが、完全ではありません。

4

2 に答える 2

9

Jacob Ehn のブログ記事「Automatically Merging Work Items in TFS 2010」を参照してください。彼はcodeplexからダウンロードできるプラグインを作成しました。マージされた変更セットに関連付けられていた作業項目が自動的に関連付けられます。そのため、Main または Release にマージすると、作業項目はそれらのブランチの変更セットに関連付けられ、作業項目はそれらのブランチから離れたビルドのビルド レポートに含まれます。プラグインの導入は非常に簡単です。

于 2011-09-26T20:50:43.143 に答える
2

もう 1 つのオプションは、ビルド中に実行できるカスタム ワークフロー アクティビティをビルドして、通常関連付けられる変更セットごとにマージ履歴をトラバースできるようにすることです。基本的には、関連付けられた変更セットの既知のセットから始めて、ツリーをたどっています。変更セットをマージするのではなく、作業項目を元の変更セットに関連付けるだけでよいことを開発者に任せることができるので、私はこのアプローチを好みます。これにより、ブライアンが彼の提案で説明したように、カスタム作業項目ポリシーを展開する必要がなくなります。

http://www.edsquared.comで私に連絡したい場合は、マージ履歴ツリーのトラバースを開始するためのサンプル コードがあるかもしれません。

于 2011-09-28T00:27:13.990 に答える