萬盛學電腦網

您现在的位置: 萬盛學電腦網 >> 電腦基礎知識 >  >> 電腦入門

.svn 隱藏目錄批量刪除三大跨平台方案:svn export、Windows 搜尋、Linux find+xargs

方案一:svn export` — 最乾淨、官方推薦

svn export /path/to/working-copy /path/to/clean-export
  • 導出「乾淨」目錄樹,**完全不包含 .svn 目錄**。
  • 適用:發佈生產代碼、打包發布、遷移至非 SVN 環境。
  • 注意:價產生新副本,原工作副本保留 .svn 繼續版控。

方案二:Windows 圖形化搜尋刪除 (適用掛載 Samba/網路磁碟)

  1. 在 Windows 掛載/映射 SVN 工作副本根目錄 (如 Z:\project)。
  2. 資源管理員搜尋框輸入:.svn → 等待索引完成。
  3. 篩選「類型: 檔案資料夾」→ 全選 → Shift+Delete 永久刪除。
  4. ⚠ 僅刪除資料夾,勿刪除搜尋到的散落檔案 (如 .svn/entries 等內部檔)。
  5. 方案三:Linux 終端機一鍵清除 (生產環境/腳本自動化首選)

    cd /path/to/working-copy
    find . -type d -name ".svn" -print0 | xargs -0 rm -rf
    • -type d 僅匹配目錄。
    • -print0 + xargs -0 安全處理含空白/特殊字元的路徑。
    • rm -rf 遞歸強制刪除。

    進階變體

    • 僅列不刪 (預演):find . -type d -name ".svn" -ls
    • 排除特定子目錄:find . -path ./vendor -prune -o -type d -name ".svn" -print0 | xargs -0 rm -rf
    • Git 專案清理 .git:find . -type d -name ".git" -print0 | xargs -0 rm -rf

    ⚠ 核心警示

    刪除 .svn 目錄 = 切斷版本控制關聯**,該目錄不再是工作副本,無法 svn commit/update/diff/log。**僅在確定不再需要版控歷史時執行** (如交付給客戶、遷移至 Git)。

copyright © 萬盛學電腦網 all rights reserved