手冊

附錄 B. 自動化 TortoiseMerge

目錄

TortoiseMerge 命令列參數

TortoiseMerge 可以使用命令列參數啟動,以避免必須透過「開啟」對話方塊自行選取檔案。如果您想要從其他應用程式使用 TortoiseMerge,這也很有用。

TortoiseMerge 命令列參數

大部分參數需要額外資訊,例如路徑或其他字串。在這些情況下,請在參數後方加上「:」,並將字串/路徑放在其後。範例

/base:"c:\folder\my base file.txt"
      

表 B.1. 可用的命令列選項列表

命令描述
/?顯示一個包含最重要的命令列參數的對話方塊。
/help? 相同。
/base指定用於三向差異比對的 base 檔案。這是正在進行差異比對的檔案的共同祖先,雖然它不會顯示在個別視窗中。對於雙向差異比對,這是左側檔案。
/basenamebase 檔案的名稱。這會顯示在檢視標題中,而不是檔案路徑。對於三向差異比對,它會顯示在檢視標題的工具提示中。
/basereflectedname用於 editorconfig 範本的名稱。
/theirs指定用於三向差異比對的 theirs 檔案,顯示在左側窗格中。
/theirsnametheirs 檔案的名稱。這會顯示在檢視標題中,而不是檔案路徑。
/theirsreflectedname用於 editorconfig 範本的名稱。
/mine指定用於三向差異比對的 mine 檔案,顯示在右側窗格中。對於雙向差異比對,這是右側檔案。
/minenamemine 檔案的名稱。這會顯示在檢視標題中,而不是檔案路徑。
/minereflectedname用於 editorconfig 範本的名稱。
/merged

指定用於差異比對的結果 merged 檔案。這是儲存合併/衝突解決結果的檔案路徑。

如果未針對三向差異比對設定此項,則 TortoiseMerge 會詢問使用者要將結果儲存到哪裡。

如果未針對雙向差異比對設定此項,則 TortoiseMerge 會自動使用右側檢視中顯示的檔案路徑作為儲存路徑。

/mergednamemerged 檔案的名稱。這會顯示在檢視標題中,而不是檔案路徑。
/mergedreflectedname用於 editorconfig 範本的名稱。
/patchpath應套用修補程式的路徑。如果您未設定此路徑,則 TortoiseMerge 會嘗試自行尋找路徑,以符合修補程式檔案中的路徑,但這可能需要 非常長的時間
/saverequired如果指定,即使使用者未修改檔案,也會強制 TortoiseMerge 在結束前詢問是否儲存檔案。
/saverequiredonconflicts如果指定,即使使用者未修改檔案,且發現衝突,也會強制 TortoiseMerge 在結束前詢問是否儲存檔案。
/patchoriginal要修補的原始檔案名稱。用於檢視標題。
/patchpatched產生的已修補檔案名稱。用於檢視標題。
/diff要套用至目錄的修補程式/diff 檔案路徑。
/oneway強制 TortoiseMerge 以單向檢視啟動,而非使用者在設定中指定的檢視。
/reversedpatch切換指定兩個檔案的左右檢視以進行差異比對。
/createunifieddiff建立兩個檔案的 unified diff 檔案 (修補程式檔案),這兩個檔案以 /origfile:"path_to_original_file"/modifiedfile:"path_to_modified_file" 指定。目標路徑以 /outfile:"path_to_resulting_patchfile" 設定。如果未設定 /outfile,則會顯示檔案儲存對話方塊,以便使用者選擇儲存修補程式檔案的位置。注意:如果設定 /createunifieddiff,則會忽略所有其他參數。
/line指定載入檔案後要跳到的行號。
/readonly防止檔案被編輯。這表示 TortoiseMerge 的編輯功能已停用。
/nosvnresolve防止 TortoiseMerge 在儲存檔案後詢問是否要在 SVN 中將檔案標記為已解決。


您也可以在命令列上提供簡單的檔案名稱,為了與其他 diff 程式相容。在此簡化形式中,命令列為

TortoiseMerge BaseFilePath MyFilePath [ TheirFilePath ]
      

如果提供兩個檔案,則會將它們彼此比較。如果提供三個檔案,則第一個檔案會被視為 BASE 檔案,另外兩個檔案會與其進行三向差異比對。

TortoiseSVN 首頁