如何徹底刪除SVN中的文件和文件夾(附恢復方法)
這里假設SVN項目的目錄為 /data/svn/project,我們想排除trunk/test.exe文件和trunk/notallowed/目錄,操作步驟如下及執(zhí)行的svn命令(在svn安裝目錄的bin目錄下)如下:
# 首先將svn庫整個導出
svnadmin dump /data/svn/project > project_original.dump
# 然后將project_original.dump文件里面不需要的文件進行排除并生成一個新的dump文件
type project_original.dump | svndumpfilter exclude trunk/test.exe trunk/notallowed > project_new.dump
# 接下來創(chuàng)建一個新的svn項目并將上面的dump文件導入到一個新的項目中
svnadmin create /data/svn/project_new
svnadmin load /data/svn/project_new < project_new.dump
最后將原來的project目錄刪除并將project_new修改成project即可。需要注意的是dump命令會將svn項目中的所有修改和歷史記錄都導出來,這樣導出的dump文件會很大,而且導入的時間也比較長。
從服務器端徹底刪除SVN版本庫中部分文件夾或文件
若要徹底刪除SVN版本庫某一文件夾或文件,可采取這種方法(舉例說明):
例:假設SVN庫路徑為E:/svn/project,庫中的目錄結(jié)構(gòu)為
QA/Trunk
Software/Tags/test.exe
刪除Software/Tags/目錄下的test.exe文件
操作步驟為:
把SVN庫dump出來
使用svndumpfilter過濾掉要刪除的文件
新建一個SVN庫
再將處理好的文件load到新的SVN庫里
具體命令為:
>svnadmin dump E:/svn/project > aaa.dump
>type aaa.dump | svndumpfilter exclude /Software/Tags/test.exe > bbb.dump
>svnadmin create E:/svn/project_new
>svnadmin load E:/svn/project_new < bbb.dump
然后再將新建的project_new 重命名為project,以前的project可以移走,或是另取一個名稱.(因為在TRAC中使用的SVN目錄是project,用戶所使用的SVN目錄也是project)
此方法在SVN庫里版本不多的情況下完全可以達到徹底刪除SVN版本庫某一文件夾或文件的效果,但是如果SVN庫里的版本過多,在dump版本的時候會因存儲空間不足,而無法dump版本.也就無法操作了.這時須另掛能滿足其存儲空間的硬盤操作.
SVN如何恢復已刪除文件或文件夾
用TortoiseSVN:
1.在本地working copy中,用TortoiseSVN->Show log查看版本庫的歷史記錄??梢杂胹earch。
2.找到刪除該文件或者文件夾的版本,在Log message里右鍵Revert the changes from this revision。
3.該文件或文件夾就被恢復到本地的working copy中了。如果是誤刪除的,commit到Repository里就行了。
用Eclipse的Subclipse插件:
1.用Team->Show SVN Repository History查看版本庫的歷史記錄。
2. 找到刪除該文件或者文件夾的版本,右鍵Revert to XX version.
3.該文件或文件夾就被恢復到本地的working copy中了。如果是誤刪除的,commit到Repository里就行了。
- 刪除SVN三種方法delSvn(windows+linux)
- Windows下SVN服務器搭建方法整理(apache)
- WINDOWS下搭建SVN服務器端的步驟分享(Subversion)
- 清除svn文件的bat腳本整理
- Windows下VisualSVN Server的安裝與配置方法(圖文)
- 解決常見的Eclipse SVN插件報錯方法詳解
- svn服務器啟動和svn服務器重啟、停止等操作腳本分享
- 使用svn進行版本控制
- SVN出現(xiàn)提示org.apache.subversion.javahl.ClientException: Attempted to lock an already-locked dir解決方案
相關文章
Java開發(fā)實現(xiàn)的Socket雙向通信功能示例
這篇文章主要介紹了Java開發(fā)實現(xiàn)的Socket雙向通信功能,結(jié)合實例形式分析了java基于socket實現(xiàn)的服務器端與客戶端雙向通信相關操作技巧,需要的朋友可以參考下2018-01-01SpringBoot?調(diào)用外部接口的三種實現(xiàn)方法
Spring Boot調(diào)用外部接口的方式有多種,常見的有以下三種方式:RestTemplate、Feign 和 WebClient,本文就詳細介紹一下,感興趣的可以了解一下2023-08-08Spring學習筆記之RestTemplate使用小結(jié)
這篇文章主要給大家介紹了關于Spring學習筆記之RestTemplate使用的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2018-08-08SpringBoot實現(xiàn)統(tǒng)一封裝返回前端結(jié)果集的示例代碼
在實際項目開發(fā)過程中,我們經(jīng)常將返回數(shù)據(jù)的基本形式統(tǒng)一為JSON格式的數(shù)據(jù)。但項目可能是由很多人開發(fā)的,所以我們最好將返回的結(jié)果統(tǒng)一起來。本文介紹了SpringBoot實現(xiàn)統(tǒng)一封裝返回前端結(jié)果集的示例代碼,需要的可以參考一下2022-06-06小伙熬夜用Java重現(xiàn)經(jīng)典超級馬里奧代碼實例
這篇文章主要介紹了Java重現(xiàn)經(jīng)典超級馬里奧,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2019-04-04El表達式使用問題javax.el.ELException:Failed to parse the expression
今天小編就為大家分享一篇關于Jsp El表達式使用問題javax.el.ELException:Failed to parse the expression的解決方式,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧2018-12-12