分享方式:


解決指令 (Team Foundation 版本控制)

Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019

Visual Studio 2019 |Visual Studio 2022

Team Foundation 版本控制 (TFVC) tf resolve 命令可讓您解決工作區中變更的專案與伺服器上專案的最新或目的地版本之間的衝突。

必要條件

若要使用 resolve 命令,您必須是工作區擁有者,或將全域 管理員 註冊工作區的許可權設定為 [允許]。 您也必須擁有 解析作業中所涉及專案的讀取取出 許可權,設定為 [允許]。 如需詳細資訊,請參閱 預設 TFVC 許可權

語法

tf resolve [itemspec] 
[/auto:(AutoMerge|TakeTheirs|KeepYours|OverwriteLocal|DeleteConflict|KeepYoursRenameTheirs)] 
[/preview] [(/overridetype:overridetype | /converttotype:converttype] [/recursive] [/newname:path] [/noprompt] [/login:username, [password]]

參數

引數

Argument

說明

<itemspec>

用來識別要解決版本衝突的檔案或資料夾。 如果省略,則會包含所有有衝突的專案。 如需 TFVC 如何剖析 itemspec 以判斷哪些專案在範圍內的詳細資訊,請參閱 使用 Team Foundation 版本控制命令

注意

您可以指定多個 itemspec 自變數。

<overridetype>

搭配 /overridetype 選項使用。 指定所涉及的檔案編碼類型,例如 binary

<converttype>

搭配 /converttotype 選項使用。 指定編碼類型,例如 unicode

<path>

搭配 /newname 選項使用。 指定受影響檔案或資料夾的新路徑。

<username>

提供 選項的值 /login 。 您可以將使用者名稱值指定為 DOMAIN\usernameusername

選項。

選項

說明

/auto

使用下列其中一個選項,解決目前工作區中不同指定專案版本之間的未解決衝突。

如果無法自動協調差異,可能是因為檔案是二進位檔,或是因為工作區和伺服器版本包含重疊的內容變更,衝突仍無法解決,等待選取其中一個手動合併選項。

  • AutoMerge:自動協調專案指定工作區版本與最新伺服器版本之間的非重疊內容差異。

  • TakeTheirs 指示 TFVC 使用伺服器修訂覆寫工作區修訂。 針對執行 merge 命令所產生的衝突,此選項會接受來自合併來源的變更,並覆寫目標中的變更。

  • KeepYours 會指示 TFVC 保留您的變更,並捨棄專案伺服器版本中的變更。 針對執行 merge 命令所產生的衝突,此選項會捨棄來自合併來源的變更,並將目標維持不變。

  • OverwriteLocal 使用伺服器版本覆寫工作區中的檔案。 您可以使用此選項來解決工作區中可寫入檔案所產生的衝突。

  • DeleteConflict 會從衝突數據表和選項/描述數據表中移除衝突。

  • KeepYoursRenameTheirs 接受檔案的內容和名稱,並將其檔案重新命名為您指定的新名稱。 此選項需要單一專案 filespec,而且您也必須包含 /newname 選項。

/preview

顯示目前的衝突,但不會執行任何動作。

/overridetype

指定參與三向合併之檔案的選擇性編碼方式。 檔案會被視為指定的編碼方式。 您必須判斷正確的編碼方式。 TFVC 會將產生的合併輸出儲存在工作區中指定的編碼中。 如需檔案編碼的詳細資訊,請參閱 管理文件類型

注意

您無法指定 /overridetype/converttotype

/converttotype

指定在三向合併作業中用於輸入暫存轉換的編碼方式。 合併輸出會儲存在工作區中指定的編碼中。 此選項是進階選項,而且很少使用。 如需檔案編碼的詳細資訊,請參閱 管理文件類型

注意

您無法指定 /overridetype/converttotype

/recursive

解析特定目錄和子目錄中的專案。

/newname

解決名稱衝突。 只能與 和KeepYoursRenameTheirs搭配AutoMerge使用。 使用 AutoMerge時, /newname 只有涉及重新命名和/或取消刪除的衝突才有效。 如果使用,您必須提供新的 path

/login

指定要向 Azure DevOps 驗證使用者的使用者名稱和密碼。

/noprompt

隱藏輸入的任何提示。

備註

您可以使用 resolve 命令來選取解決與伺服器版本衝突的擱置變更。

如果在取得、簽入或合併作業期間偵測到版本與目的地伺服器上的版本之間發生版本衝突,系統會提示您使用 resolve 命令來選取衝突解決。 您必須先解決衝突,才能簽入擱置中的變更。

如需如何使用 tf 命令行公用程式的詳細資訊,請參閱 使用Team Foundation版本控制命令

範例

下列範例會在 Visual Studio 中開啟 [ 解決衝突] 對話方塊,以便告訴 TFVC 如何處理與伺服器版本衝突的擱置變更。

tf resolve

下列範例會藉由自動合併變更,嘗試解決所有衝突。

tf resolve /auto:automerge