4

次のコマンドを TFS に発行しています。

>tf merge /baseless c:\ws\source c:\ws\target /recursive /version:C100~C100

しかし、マージする必要があるチェンジセットのリストがたくさんあります。このためのショートカット、またはリストを指定する方法はありますか。たとえば、次のようになります。

>tf merge /baseless c:\ws\source c:\ws\target /recursive /version:C100,C108,C110,C800,C1001,etc...
4

3 に答える 3

3

powershell がオプションの場合、以下のスクリプトが役立ちます (テストされていません!):

$cslist = 1,23,45,456,568 #list of all changesets
foreach ($cs in $cslist) { & 'C:\Program Files\Microsoft Visual Studio 10.0\Common7\IDE\tf.exe' merge /baseless c:\ws\source c:\ws\target /recursive /version:C$cs }
于 2012-07-14T00:58:25.503 に答える
3

別の投稿からこれをつかんだので、あなたはそれを見たかもしれませんが、私はこれに出くわしていないので、私はただ手を貸そうとしています.

いくつかのオプションがあります。

  • マージしたいチェンジセット (またはマージを避けたいチェンジセット) がわかっている場合は、マージしたいファイルから構造上のフォルダーを選択し、必要な特定のチェンジセットを選択してマージを実行できます。変更セット 2000、2001、2004、2010 があり、2001 と 2010 が必要な場合、これは少し複雑です。マージごとにリスト内の連続する変更セットのみをマージできるため、2001 をマージしてから 2010 をマージする必要があります。これはマージよりも優れています。変更セットグループよりも多くのファイルがある場合は、多くのファイル。
  • 特定の変更セットまたは最新の変更セットまで、そのフォルダーの下のすべてをマージする場合は、1 回の一括マージで行うことができます。

これらの両方で、ソース ブランチとターゲット ブランチの同じファイルの同じ行に別の変更が加えられた問題を解決する必要があります。

OP: TFS で複数のファイルをマージする

于 2012-06-28T14:23:24.513 に答える
2

次の拡張機能は、これを行うと主張しています。

TFS 生産性向上ツール - Extended Merge 2012

ExtendedMerge 拡張機能は、TFS によって実装されていないいくつかのマージ機能の回避策を提供します。

  1. TFS マージは、以前のすべての変更セットからのファイルを 1 つの大きなマージ変更セットに入れる一括チェックイン操作につながります。
  2. TFS では、マージ操作によってチェリー ピークされる連続する変更セットのみが許可されます。
  3. TFS では、作業項目を選択してチェリー ピーク マージの変更セットを選択することはできません。
  4. TFS マージ ダイアログには、「強制」オプションと「ベースレス」オプションがありません。

Visual Studio User Voiceでこの機能に賛成票を投じることもできます。

于 2014-03-29T10:37:54.920 に答える