清除 Azure DevOps Server 中的舊數據

Azure DevOps Server 2022 |Azure DevOps Server 2020 |Azure DevOps Server 2019

經過一段時間后,Azure DevOps Server 實例可以建置非常大量的數據,包括檔案、組建、工作專案等等。 在專案的存留期間,此數據對於產生軟體相關之各種成品的歷程記錄十分重要。 最後,維護較舊數據所牽涉到的成本,包括效能影響和增加升級所花費的時間,除了增加的磁碟空間需求之外,也可能超過優點。

本文提供從 Azure DevOps Server 集合資料庫清除各種不同數據類型的指引。

請注意,清除之後,任何 SQL 資料檔的大小都不會減少,因為 SQL Server 會保留空間以供日後使用。

重要

在下列所有情況下,一旦清除數據之後 ,就無法復原 ,但還原資料庫備份除外。 請小心只清除您確定不再需要的數據。

先決條件

若要執行這些程式,您必須是高度許可權的使用者,通常是 Project 集合或 Project Administrators 群組的成員。

專案

如果您有不再需要的整個專案,刪除這些專案可能會造成很大的影響,因為這將會移除所有功能區域中專案的所有內容。 有兩種方式可以刪除專案:

  1. 使用 入口網站

  2. 使用 Visual Studio 安裝隨附的 TfsDeleteProject 工具。

根據預設,這兩種方法會執行相同的動作集。

檔案

一般而言,檔案內容會耗用 Azure DevOps Server 集合資料庫中大部分的空間,因此清除不需要的檔案可能會對數據磁碟區造成重大影響。 Azure DevOps Server 集合資料庫中儲存許多不同類型的檔案,包括 Team Foundation 版本控制 檔案、Git 檔案、工作專案附件、測試案例附件、組建輸出等等。 大部分但並非全部都支援清除。

請注意,檔案內容通常不會在刪除時 立即 清除,而是由定期執行的背景作業 (通常每天) 一次。

Team Foundation 版本控制 內容

Team Foundation 版本控制 (TFVC) 分支、資料夾和檔案遭到刪除時,它們只會以邏輯方式刪除 - 其內容仍可在歷程記錄中使用。 TFVC 分支、資料夾或個別檔案可以使用tf.exe中的 destroy 命令實際刪除。

測試附件

測試回合期間建立的測試附件可以使用測試附件清除程式,其中包含 Azure DevOps Server Power Tools

清除測試數據的另一個選項是設定項目的測試保留原則。 若要深入瞭解,請參閱 控制保留測試結果的時間長度。

XAML 組建

刪除 Azure DevOps Server 中的組建時,會保留所產生的資訊子集,以避免下次重建倉儲時遺失報告數據。 建置數據可以使用 tfsbuild.exe中的 destroy 命令實際刪除。

此外,您可以設定組建和發行管線的保留原則。 若要深入了解,請參閱建置和發行保留原則