2010-08-17 217 views
3

我試圖從修訂歷史記錄,我不是故意要提交刪除特定文件刪除特定文件。有人可以提供一種方法來做到這一點?從修訂歷史

+0

您可以接受和/或給予好評的答案,如果它幫助。謝謝! – bahrep 2014-08-28 13:53:41

回答

2

你需要使用svndumpfilter工具。該過程涉及轉儲您的存儲庫,篩選(使用svndumpfilter)您的轉儲文件,並將結果重新加載到新的存儲庫中。有關詳細信息,請參見SVNBook中的this chapter

-2

無法刪除的修訂歷史。

+1

這不是真的...這就是過濾流實用程序的整個「存在的理由」。 – Mark 2010-08-31 16:56:32

2

除了過濾庫轉儲svndumpfilter還有另一種解決方案,允許您在一個倉庫擺脫特定的文件和文件夾。請參閱Apache Subversion FAQ條目"How do I completely remove a file from the repository's history?"

的解決方案需要執行以下步驟:

  1. 設置path-based authorization規則否認讀取到路徑的文件或要刪除的文件夾的USERNAME訪問來自存儲庫歷史。請注意複數名詞路徑。您想要擺脫的文件或文件夾可能具有不同的名稱,或者可能位於存儲庫歷史記錄的不同位置。設置拒絕規則時請考慮這一點。

  2. 創建一個空的存儲庫,

  3. 使用svnsync工具將源(即,原始的)儲存庫到目標存儲庫下帳戶USERNAME同步。有關使用svnsync進行存儲庫複製的詳細信息,請參閱SVNook章節"Repository Replication"

不像svndumpfiltersvnsync將自動不可讀的源路徑進入正常添加,如果歷史涉及複製操作需要過濾這是有用的翻譯複製操作。