終結指令 (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 版本。 允許的值為 datetip或特定的變更集。 如需 TFVC 如何剖析版本規格以判斷其範圍內哪些專案的詳細資訊,請參閱 使用 Team Foundation 版本控制命令

<username>

提供 選項的值 /login 。 您可以指定值 username 指定或 DOMAIN\usernameusername

TeamProjectCollectionUrl

專案集合的 URL,其中包含您要終結的檔案, http://myserver:8080/tfs/DefaultCollection例如 。

選項。

選項

說明

/keephistory

選擇性。 指定檔案的歷程記錄會保留,即使檔案的內容已終結也一樣。 無法使用 選項來指定 /preview 此選項。

/stopat

選擇性。 只有在同時指定時 /keephistory ,才能使用。

指定檔案的檔案版本,以及之後保留歷程記錄的檔案。

的預設版本 /stopattip 專案最新存入版本的 (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 通知,因此使用 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 是刪除標識碼。