2011-12-08 113 views
3

有很多關於移動版本歷史的Subversion歷史的文章,但我期待着做一些不同的事情。移動Subversion版本庫沒有歷史

基本上我們有一個已經被用作概念驗證的存儲庫,我們希望將其歸檔。然而,我們希望創建一個新版本的代碼庫,並且保存了作者histroy,但這是一個全新的開始,所以我們對保留版本歷史記錄不感興趣。另外,我們試圖保持存儲庫的大小,因爲在過去存儲的二進制文件導致存儲庫過大。

我還將同時刪除一些我認爲可以使用轉儲過濾器的文件夾?

由於我想保留用戶信息檢查和檢查回新的地方不會是首選的選項。

+3

你自相矛盾。你想要作者的歷史,但你不想要歷史?澄清。 –

+0

我想他只想修改每個文件 –

+0

@ChristofferHammarström我已澄清。基本上我想要最近的作者,但沒有版本歷史。猜猜這有點奇怪,但我不希望每個文件都說我最後檢查了它們。也許我正在尋找解決二進制文件存儲在那裏的問題的解決方案。 – Firedragon

回答

3

要使用他們的作者,提交日期和提交消息獲得最新版本的文件,您必須使用svnadmin dump從存儲庫創建轉儲文件並將svndumpfilter過濾掉您不想保留的修訂。

與過濾流的工作是在一般一個非常令人沮喪的工作,你可能需要依靠衍生的(和經常生病保持的)程序,如svnfiltereddumpsvndumpsanitizersvndumpfilter2svndumpfilter3

最後,你應該問自己這個問題,如果在歷史上的清理是真的值得的努力。

+0

不幸的是,這個版本庫超過了600MB,我知道這個版本並不是那麼大,但是它只適用於幾個主要源代碼的應用程序,所以它應該小得多。然而,這是因爲二進制文件在過去被提交,這擴大了存儲庫的大小,似乎沒有簡單的方法可以在沒有提及的託管的情況下刪除這些文件。 – Firedragon

+0

您可以創建轉儲並從轉儲文件中刪除二進制文件的base64字符串。 (這是一個純文本文件。) –

3

你可以簡單地做一個svn export你想要繼續有的項目,並在新的知識庫上做一個svn import。在導入之前,只需刪除不想導入的文件。

相關問題