一、如何徹底刪除svn中的檔案或目錄
假設svn專案的目錄為 g:\svn\myproj, 裡面有 test/readme.txt 檔案和 work/sound/目錄,其中test和work是在g:\svn\myproj下的頂層目錄,
即路徑分別為g:\svn\myproj\test和g:\svn\myproj\work\sound
1)首先將svn庫整個匯出
svnadmin dump g:\svn\myproj > myproj.dump
2)將myproj.dump檔案裡面不需要的檔案進行排除並生成乙個新的dump檔案
type myproj.dump | svndumpfilter exclude test/readme.txt work/sound --drop-empty-revs --renumber-revs --quiet > drop.dump
這樣readme.txt 檔案和sound目錄就被排除了。
--drop-empty-revs: 刪除因過濾而產生的空版本
--renumber-revs :過濾後重編餘下的版本
--quiet : 不顯示過濾的統計資料
其中 --quiet引數或者其他兩個引數有可能不支援,如果生成drop.dump的命令出錯,建議按個去掉這幾個引數再進行嘗試
exclude命令是排除指定檔案或目錄,與之相反,include命令是只儲存指定檔案或目錄,例如:
type myproj.dump | svndumpfilter include test/readme.txt work/sound --drop-empty-revs --renumber-revs > d:\drop.dump
這樣就只保留了readme.txt檔案和work/sound目錄,其他都刪除了
3) 建立新的svn專案並將上面的dump檔案匯入到新專案中
svnadmin create g:\svn\newproj
svnadmin load g:\svn\newproj < d:\drop.dump
這樣一來,徹底刪除svn版本庫中部分檔案或目錄的工作就完成了。
二、合併版本庫
假設有g:\svn\repos1和g:\svn\repos2兩個版本庫,且repos1版本庫比較小,因此要把repos1匯入到repos2中
1) 檢視repos1的最新版本號
svnlook youngest g:\svn\repos1
得到最大版本號為81
2) 增量匯出
svnadmin dump g:\svn\repos1 -r 0:81 --incremental > d:\repos1.dump
3) 匯入
假設repos2下面有work/test目錄(全路徑是g:\svn\repos2\work/test):
svnadmin load g:\svn\repos2 --parent-dir work/test < d:\repos1.dump
--parent-dir:指定匯入repos2版本庫的哪個目錄下
這樣就完成了repos1版本庫和repos2版本的的合併,最終所有的資料都存在repos2上。
刪除檔案中指定的一行
完美solution def removeline filename,lineno fro open filename,r 檔案用於讀取 current line 0 while current line lineno fro.readline current line 1 將檔案指標定位到想刪除行...
刪除單鏈表中指定的節點
include stdafx.h include include include using namespace std struct node 建立單鏈表 node createsinglelist int arr,int n return head 輸出單鏈表 void print node h...
Python 刪除列表中指定的元素
remove方法用於按值刪除元素,返回值為none pop方法用於按下標刪除元素,返回值為刪除的元素。remove方法用於按值刪除元素,返回值為none pop方法用於按下標刪除元素,返回值為刪除的元素。l c d e f print l 推薦 res l.remove e print l,res ...