我有錯犯了一個文件兩次 - 唯一的區別是在其中一個文件名稱的大寫字母:如何刪除重複的文件在以前的版本
- myfile.txt文件
- MYFILE.TXT
使用龜,我可以看到這兩個文件在以前的版本,我可以選擇它們,當我按下d elete它問我一個評論,並提交它告訴我,該URL不存在。我不再需要這兩個文件了。
我們使用Trac進行項目管理,但由於我提交了這兩個文件,所以無法與我們的代碼同步。
如何才能刪除麻煩的文件?
我有錯犯了一個文件兩次 - 唯一的區別是在其中一個文件名稱的大寫字母:如何刪除重複的文件在以前的版本
- myfile.txt文件
- MYFILE.TXT
使用龜,我可以看到這兩個文件在以前的版本,我可以選擇它們,當我按下d elete它問我一個評論,並提交它告訴我,該URL不存在。我不再需要這兩個文件了。
我們使用Trac進行項目管理,但由於我提交了這兩個文件,所以無法與我們的代碼同步。
如何才能刪除麻煩的文件?
有沒有一種簡單的方法,因爲svn旨在永遠不會忘記任何東西。 有a workaround你可以試試。
正如我理解你的問題,重點不在於讓Subversion忘掉你的文件(正如丹尼斯的回答中所討論的),因爲它正在糾正一種情況,即你有兩個不可用的文件,因爲它們的名字只有在。解決方案非常簡單 - 打開存儲庫瀏覽器並刪除或重命名其中一個有問題的文件。即使在本質上不區分大小寫的系統(即Windows)上也可以完成此操作,因爲存儲庫本身仍然區分大小寫。 (雖然沒有說明太多,但手動參考的是Dealing with filename case conflicts。)
在這樣的路徑錯誤上,我強烈建議使用命令行SVN客戶端而不是像Tortoise這樣的圖形客戶端。您可以使用'svn list'命令在資源庫查看它們時獲取確切的文件/文件夾名稱,然後將它們複製/粘貼到'svn delete'命令中。這樣,您就可以最大限度地減少遇到與案件有關的問題的機率。
根據您對msorens的回答的評論,它看起來好像文件在當前版本庫中不存在。如果是這樣,那麼你可以做的事情就不多了。 Subversion將存儲庫歷史記錄視爲單個線性提交系列。所有修改都是對存儲庫的頭部進行的;你通常不能「回到過去」並改變過去的存儲庫狀態。刪除一個提交是可能的(但並不容易),但是它會拋出所有的提交。因此,建議僅對最近提交到存儲庫的內容進行處理(以儘量減少副作用)。一些其他的版本控制系統(例如git)在修改版本庫歷史記錄方面具有額外的功能。顛覆,不幸的是,不。
我已經找到了解決方案,但我希望有一個更簡單的方法:) – Chau 2011-12-21 11:37:43