若何完全刪除SVN中的文件和文件夾(附恢復辦法)。本站提示廣大學習愛好者:(若何完全刪除SVN中的文件和文件夾(附恢復辦法))文章只能為提供參考,不一定能成為您想要的結果。以下是若何完全刪除SVN中的文件和文件夾(附恢復辦法)正文
這裡假定SVN項目標目次為 /data/svn/project,我們想消除trunk/test.exe文件和trunk/notallowed/目次,操作步調以下及履行的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
# 接上去創立一個新的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,庫中的目次構造為
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檢查版本庫的汗青記載。可以用search。
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裡就好了。