is not a working copy directory核心邏輯:先強制獲取鎖所有權,再釋放。若直接 Unlock 會提示「非鎖持有者無法解鎖」。
# 現象:Cleanup 報 "is not a working copy directory"
# 原因:.svn 元數據損壞或目錄結構不一致
# 步驟:
1. 將報錯目錄(如 target/classes)剪切到項目外部備份
2. 右鍵項目 → Team → Cleanup(此時應成功)
3. 提交刪除操作
4. 將備份目錄粘貼回原位(不加入版本控制)
5. Team → Add to svn:ignore(可選)
適用於編譯輸出目錄、生成文件等本不應提交的內容。
[general]
# 匿名用戶訪問權限:none/read/write
anon-access = none
# 認證用戶訪問權限
auth-access = write
# 密碼文件
password-db = passwd
# 權限文件
authz-db = authz
# 域名
realm = My Repository
[groups]
admins = admin1, admin2
devs = dev1, dev2
guests = guest1
[/]
@admins = rw
@devs = rw
* = r # 關鍵:允許匿名讀取根目錄,否則 Checkout 失敗
[/project/trunk]
@devs = rw
@guests = r
[/project/tags]
@admins = rw
@devs = r # 標籤只讀
* =
關鍵規則:
* = 明確拒絕:防止未授權用戶通過繼承獲得權限現象:提交 authz 報錯 section header expected
原因:文件保存為 UTF-8 with BOM,SVN 解析失敗
解決:使用支持「UTF-8 無 BOM」的編輯器保存:
編碼 → 轉為 UTF-8 (無 BOM)另存為 → UTF-8 - 無 BOM文件 → 編碼 → UTF-8 無簽名Save with Encoding → UTF-8# 查看鎖信息
svn status -u | grep '^L'
# 強制解鎖(需倉庫管理員權限)
svn unlock --force URL/PATH
# 或直接刪除倉庫鎖文件(謹慎操作)
rm /path/to/repo/db/locks/xxx.lock
svn:ignore掌握 SVN 鎖機制與權限體系,能讓團隊協作更順暢,避免因元數據損壞導致的數據風險。