終結指令 (Team Foundation 版本控制)
Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019
Visual Studio 2019 |Visual Studio 2022
tf destroy
使用 命令從 Team Foundation 版本控制 (TFVC) 終結或永久刪除版本控制的檔案。
注意
一旦建立 TFVC 存放庫,就不允許在 Azure Devops 內刪除它。 此命令 tf destroy
只會終結或永久刪除版本控制的檔案或資料夾,但不會刪除TFVC存放庫。 它仍然會出現在已刪除訊息的選項清單中。
有時候您必須清除版本控制系統。 例如,如果某些檔案感染計算機病毒,您必須從版本控制中永久移除它們。 請勿終結仍然需要的檔案。 無法反轉終結動作。
在不使用 /keephistory
選項執行tf destroy
之前,請先刪除您想要終結的檔案。 如需詳細資訊,請參閱 從版本控制中刪除檔案和資料夾。
刪除檔案之後,您可以同步處理 TFVC 倉儲。 否則,不會與已終結的專案同步處理倉儲。
必要條件
若要使用 destroy
命令,您必須屬於Team Foundation 管理員 istrators 安全組。 如需詳細資訊,請參閱 預設 TFVC 許可權。
語法
tf destroy [/keephistory] <itemspec1>[;<versionspec>][<itemspec2>...<itemspecN>]
[/stopat:<versionspec>] [/preview] [/startcleanup] [/noprompt] [/silent] [/login:username,[password]] [/collection:TeamProjectCollectionUrl]]
參數
引數
Argument
說明
<itemspec1> [<itemspec2>...<itemspecN>]
指定要終結之檔案或資料夾的伺服器路徑。 使用多個 itemspec
值來刪除多個專案。 例如: tf destroy $/TeamProject1 $/teamProject2 $/TeamProject3
。
不支援本機路徑。
<versionspec>
提供或選項等 C58
/keephistory
/stopat
版本。 允許的值為 date
、 tip
或特定的變更集。 如需 TFVC 如何剖析版本規格以判斷其範圍內哪些專案的詳細資訊,請參閱 使用 Team Foundation 版本控制命令。
<username>
提供 選項的值 /login
。 您可以指定值 username
指定或 DOMAIN\username
username
。
TeamProjectCollectionUrl
專案集合的 URL,其中包含您要終結的檔案, http://myserver:8080/tfs/DefaultCollection
例如 。
選項。
選項
說明
/keephistory
選擇性。 指定檔案的歷程記錄會保留,即使檔案的內容已終結也一樣。 無法使用 選項來指定 /preview
此選項。
/stopat
選擇性。 只有在同時指定時 /keephistory
,才能使用。
指定檔案的檔案版本,以及之後保留歷程記錄的檔案。
的預設版本 /stopat
是 tip
專案最新存入版本的 (T)。
您無法使用標籤或工作區 versionspec
值來指定選項的專案 /stopat
。
/preview
顯示將在命令提示字元視窗中終結的檔案。 在預覽模式中執行時 tf destroy
,檔案實際上不會終結。
注意
命令提示字元視窗中的文字會顯示 [終結] 一字,其中每個將會終結的檔案。 不過,使用 選項時 /preview
,檔案實際上不會終結。
/startcleanup
強制 TFVC 元資料清除程式在刪除完成後立即啟動。 如果使用者未指定 /startcleanup
,當資料庫維護清除 Azure DevOps Server 不再參考的所有檔案時,就會發生損毀的元數據清除程式。 根據預設,清除會排定每五天執行一次。 清除 TFVC 元數據七天后,內容會由另一個清除程序刪除。 根據預設,此內容清除程式會每天執行一次。
/noprompt
或 /i
指定檔案的解構不是互動式的。 /i
是 /noprompt
的別名。
/silent
指定當您終結檔案或資料夾時,輸出不會寫入命令提示字元視窗。
/login
指定要使用 TFVC 驗證使用者的使用者名稱和密碼。
/collection
指定專案集合。
備註
當您使用 tf destroy
來終結版本控制檔案時,TFVC 應用層會收到終結要求,並檢查您是否是Team Foundation 管理員 istrators 安全組的成員。 如果您不是成員,系統會顯示錯誤訊息對話框,告訴您沒有足夠的許可權可執行作業。
系統驗證您的許可權之後,它會執行destroy命令。 此命令會刪除所有檔案參考、擱置集和擱置中的變更。 下次清除 Azure DevOps Server 不再參考的內容時,就會發生檔案的實際損毀,這是永久刪除。 您也可以指定選項, /startcleanup
以在執行之後 tf destroy
立即清除檔案。
如果您在未指定 和的情況下執行 tf destroy
,系統會顯示主控台 [是] 或 [否] 提示,以取得每個filespec
/preview
值。/i
否則,您可以將 [是] 指定 為 [全部]。
如果您未指定
/keephistory
,系統會以互動式文字提示,警告擱置中的變更,如果有的話。 如果您要變更的詳細資訊,互動式文字會指向/preview
。如果您指定
/keephistory
,您也會收到 [是]、 [否] 或 [全部 ] 文字的提示。 如果您選取 [ 是 ] 或 [全部是],解構程式就會啟動,而且終結專案的伺服器路徑會出現在命令提示字元視窗中。
Destroyed: <serverItem1>
Destroyed: <serverItem2>
Destroyed: ...
如果您將 versionspec
值指定為 tip
,則命令提示字元視窗中顯示的伺服器路徑會包含刪除識別碼。 例如, Destroyed: $/Test1/MyProject;X123
可能會出現在命令提示字元視窗中。
如果您使用 /preview
選項,則不會終結檔案,但命令行文字會顯示將會終結的檔案。 例如,如果您在命令列輸入 tf destroy /preview $/Test1/MyProject/MyProject/Program.cs
,則命令視窗會顯示下列文字:
Destroyed: $/Test1/MyProject/MyProject/Program.cs
不過,因為您使用 /preview
了 選項,因此檔案實際上不會終結。
如需如何使用 tf
命令行公用程式的詳細資訊,請參閱 使用Team Foundation版本控制命令。
/keephistory 對其他版本控制作業的影響
如果您指定 /keephistory
保留已終結檔案歷程記錄的選項,檔案會被視為由下列 TFVC 作業終結:
變更內容。 如果您嘗試變更已終結檔案的內容,例如編輯或分支,系統會發出錯誤訊息,指出內容已終結。
分支、合併或未維持。 如果您嘗試分支、合併或取消保存已終結的專案,系統會發出錯誤訊息,指出專案的內容已終結。
終結先前刪除的專案
如果專案已經刪除,則會附加刪除標識符,並導致檔名變更。
tf destroy 對 TFVC 存放庫程式代碼搜尋的影響
程式代碼搜尋不會處理 tf destroy
通知,因此使用 tf destroy
TFVC 存放庫不會自動從搜尋索引中刪除檔案。 因此,這些檔案會出現在程式代碼搜尋結果中。 若要避免這些准刪除檔案案例,請在作業之前 tf destroy
刪除檔案。
範例
下列範例會永久刪除檔案 a.cs。
tf destroy $/proj/pi/a.cs
下列範例會刪除資料夾 aFolder:
tf delete $/MyTeamProject/aFolder
若要終結已刪除的專案 aFolder,請在命令列輸入 :
tf destroy $/MyTeamProject/aFolder;x123
其中 x123
是刪除標識碼。