日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

如何彻底删除SVN中的文件和文件夹(附恢复方法)

發(fā)布時(shí)間:2023/12/10 编程问答 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 如何彻底删除SVN中的文件和文件夹(附恢复方法) 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
在SVN中如果刪除某個(gè)文件或文件夾也可以在歷史記錄中進(jìn)行找回,有的時(shí)候需要徹底刪除某些文件,即不希望通過歷史記錄進(jìn)行恢復(fù),需要在服務(wù)器上對(duì)SVN的數(shù)據(jù)進(jìn)行重新整理

這里假設(shè)SVN項(xiàng)目的目錄為 /data/svn/project,我們想排除trunk/test.exe文件和trunk/notallowed/目錄,操作步驟如下及執(zhí)行的svn命令(在svn安裝目錄的bin目錄下)如下:

# 首先將svn庫整個(gè)導(dǎo)出
?svnadmin dump /data/svn/project > project_original.dump
?# 然后將project_original.dump文件里面不需要的文件進(jìn)行排除并生成一個(gè)新的dump文件
?type project_original.dump | svndumpfilter exclude trunk/test.exe trunk/notallowed > project_new.dump
?# 接下來創(chuàng)建一個(gè)新的svn項(xiàng)目并將上面的dump文件導(dǎo)入到一個(gè)新的項(xiàng)目中
?svnadmin create /data/svn/project_new
?svnadmin load /data/svn/project_new < project_new.dump

最后將原來的project目錄刪除并將project_new修改成project即可。需要注意的是dump命令會(huì)將svn項(xiàng)目中的所有修改和歷史記錄都導(dǎo)出來,這樣導(dǎo)出的dump文件會(huì)很大,而且導(dǎo)入的時(shí)間也比較長。

從服務(wù)器端徹底刪除SVN版本庫中部分文件夾或文件

若要徹底刪除SVN版本庫某一文件夾或文件,可采取這種方法(舉例說明):

例:假設(shè)SVN庫路徑為E:/svn/project,庫中的目錄結(jié)構(gòu)為?
QA/Trunk
Software/Tags/test.exe

刪除Software/Tags/目錄下的test.exe文件

操作步驟為:?
把SVN庫dump出來?
使用svndumpfilter過濾掉要?jiǎng)h除的文件?
新建一個(gè)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可以移走,或是另取一個(gè)名稱.(因?yàn)樵赥RAC中使用的SVN目錄是project,用戶所使用的SVN目錄也是project)

此方法在SVN庫里版本不多的情況下完全可以達(dá)到徹底刪除SVN版本庫某一文件夾或文件的效果,但是如果SVN庫里的版本過多,在dump版本的時(shí)候會(huì)因存儲(chǔ)空間不足,而無法dump版本.也就無法操作了.這時(shí)須另掛能滿足其存儲(chǔ)空間的硬盤操作.?

SVN如何恢復(fù)已刪除文件或文件夾

用TortoiseSVN:
1.在本地working copy中,用TortoiseSVN->Show log查看版本庫的歷史記錄。可以用search。
2.找到刪除該文件或者文件夾的版本,在Log message里右鍵Revert the changes from this revision。
3.該文件或文件夾就被恢復(fù)到本地的working copy中了。如果是誤刪除的,commit到Repository里就行了。

用Eclipse的Subclipse插件:
1.用Team->Show SVN Repository History查看版本庫的歷史記錄。
2. 找到刪除該文件或者文件夾的版本,右鍵Revert to XX version.
3.該文件或文件夾就被恢復(fù)到本地的working copy中了。如果是誤刪除的,commit到Repository里就行了。

總結(jié)

以上是生活随笔為你收集整理的如何彻底删除SVN中的文件和文件夹(附恢复方法)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。