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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

svnadmin命令[转]

發布時間:2023/12/31 编程问答 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 svnadmin命令[转] 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

svnadmin是一個用來監控和修改Subversion版本庫的管理工具,詳情請見“svnadmin”一節。

因為svnadmin直接訪問版本庫(因此只可以在存放版本庫的機器上使用),它通過路徑訪問版本庫,而不是URL。

svnadmin?Switches

--bdb-log-keep

(Berkeley DB特定)關閉數據庫日志自動日志刪除功能。

--bdb-txn-nosync

(Berkeley DB特定)當提交數據庫事務時關閉fsync。

--bypass-hooks

繞過版本庫鉤子系統。

--clean-logs

刪除不使用的Berkeley DB日志。

--force-uuid

缺省情況下,當版本庫加載已經包含修訂版本的數據時

svnadmin會忽略流中的UUID,這個選項會導致版本庫的UUID設置為流的UUID。

--ignore-uuid

缺省情況下,當加載空版本庫時,

svnadmin會使用來自流中的UUID,這個選項會導致忽略UUID。

--incremental

導出一個修訂版本針對前一個修訂版本的區別,而不是通常的完全結果。

--parent-dir DIR

當加載一個轉儲文件時,根路徑為DIR而不是/。

--revision (-r) ARG

指定一個操作的修訂版本。

--quiet

不顯示通常的過程—只顯示錯誤。

--use-post-commit-hook

當導入使用一個轉儲文件時,在每次新的修訂版本產生時運行版本庫post-commit鉤子。

--use-pre-commit-hook

當加載一個轉儲文件時,每次新加修訂版本之前運行版本庫的pre-commit鉤子。如果鉤子失敗,終止提交并中斷加載進程。

svnadmin?Subcommands

名稱

svnadmin create — 創建一個新的空的版本庫。

概要

svnadmin create REPOS_PATH

描述

在提供的路徑上創建一個新的空的版本庫,如果提供的目錄不存在,它會為你創建。

[51]對于Subversion 1.2,svnadmin缺省使用fsfs文件系統后端創建版本庫。

選項

--bdb-txn-nosync --bdb-log-keep --config-dir DIR --fs-type TYPE

例子

創建一個版本庫就是這樣簡單:

$ svnadmin create /usr/local/svn/repos

在Subversion 1.0,一定會創建一個Berkeley DB版本庫,在Subversion 1.1,Berkeley DB版本庫是缺省類型,但是一個FSFS版本庫也是可以創建,使用--fs-type選項:

$ svnadmin create /usr/local/svn/repos --fs-type fsfs

?


[51] 記住svnadmin只工作在本地路徑,而不是URL。


名稱

svnadmin deltify — 修訂版本范圍的路徑的增量變化。

概要

svnadmin deltify [-r LOWER[:UPPER]] REPOS_PATH

描述

svnadmin deltify因為歷史原因之存在于1.0.x,這個命令已經廢棄,不再需要。

它開始于當Subversion提供了管理員控制版本庫壓縮策略的能力,結果是復雜工作得到了

非常小的收益,所以這個“特性”被廢棄了。

選項

--revision (-r) --quiet

名稱

svnadmin dump — 將文件系統的內容轉儲到標準輸出。

概要

svnadmin dump REPOS_PATH [-r LOWER[:UPPER]] [--incremental]

描述

使用“

dumpfile”可移植格式將文件系統的內容轉儲到標準輸出,將反饋發送到標準錯誤,導出的修訂版本從LOWER到UPPER。如果沒有提供修訂版本,會導出所有的修訂版本樹,如果只提供LOWER,導出一個修訂版本樹,通常的用法見“版本庫的移植”一節。

缺 省情況下,Subversion的轉儲流包含了一個包括所有文件和目錄的單獨修訂版本(請求的修訂版本范圍的第一個),后面是其它的只包含本修訂所修改的 文件和目錄的修訂版本(請求范圍的其它版本)。對于修改的文件,轉儲文件包括所有的內容和屬性,對于目錄,包括所有的屬性。

有一對有用的選項可以改變轉儲文件產生的方式,第一個是--incremental,使得第一個修訂版本只顯示其修改的文件和目錄,而不是整個目錄樹,就像轉儲文件中其它的修訂版本。這對產生一個準備導入到已經有數據的版本庫時非常有用。

第二個有用的選項是--deltas,這個選項導致

svnadmin dump不會保留修改文件的所有內容,而只是記錄修改的部分。這樣減少(有些情況下是非常大的)了svnadmin dump產生的轉儲文件的大小。然而,也有缺點—增量轉儲文件需要更多的CPU來創建,也不可以用svndumpfilter操作,也不如非增量文件容易被如gzip和bzip2等第三方工具壓縮。

選項

--revision (-r) --incremental --quiet --deltas

例子

轉儲整個版本庫:

$ svnadmin dump /usr/local/svn/repos SVN-fs-dump-format-version: 1 Revision-number: 0 * Dumped revision 0. Prop-content-length: 56 Content-length: 56 …

從版本庫增量轉儲一個單獨的事務:

$ svnadmin dump /usr/local/svn/repos -r 21 --incremental * Dumped revision 21. SVN-fs-dump-format-version: 1 Revision-number: 21 Prop-content-length: 101 Content-length: 101 …

名稱

svnadmin help

概要

svnadmin help [SUBCOMMAND...]

描述

當你困于一個沒有網絡連接和本書的沙漠島嶼時,這個子命令非常有用。

別名

?, h


名稱

svnadmin hotcopy — 制作一個版本庫的熱備份。

概要

svnadmin hotcopy REPOS_PATH NEW_REPOS_PATH

描述

這個子命令會制作一個版本庫的完全“

熱”拷貝,包括所有的鉤子,配置文件,當然還有數據庫文件。如果你傳遞--clean-logs選項,svnadmin會執行熱拷貝操作,然后刪除不用的Berkeley DB日志文件。你可以在任何時候運行這個命令得到一個版本庫的安全拷貝,不管其它進程是否使用這個版本庫。

選項

--clean-logs

名稱

svnadmin list-dblogs — 詢問Berkeley DB在給定的Subversion版本庫有哪些日志文件存在(只有在版本庫使用bdb作為后端時使用)。

概要

svnadmin list-dblogs REPOS_PATH

描述

Berkeley DB創建了記錄所有版本庫修改的日志,允許我們在面對大災難時恢復。除非你開啟了DB_LOG_AUTOREMOVE,否則日志文件會累積,盡管大多數是不再使用可以從磁盤刪除得到空間。詳情見

“管理磁盤空間”一節。


名稱

svnadmin list-unused-dblogs — 詢問Berkeley DB哪些日志文件可以安全的刪除(只有在版本庫使用bdb作為后端時使用)。

概要

svnadmin list-unused-dblogs REPOS_PATH

描述

Berkeley DB創建了記錄所有版本庫修改的日志,允許我們在面對大災難時恢復。除非你開啟了DB_LOG_AUTOREMOVE,否則日志文件會累積,盡管大多數是不再使用,可以從磁盤刪除得到空間。詳情見

“管理磁盤空間”一節。

例子

刪除所有不用的日志文件:

$ svnadmin list-unused-dblogs /path/to/repos /path/to/repos/log.0000000031 /path/to/repos/log.0000000032 /path/to/repos/log.0000000033$ svnadmin list-unused-dblogs /path/to/repos | xargs rm ## disk space reclaimed!

名稱

svnadmin load — 從標準輸出讀取“

轉儲文件”格式流。

概要

svnadmin load REPOS_PATH

描述

從標準輸出讀取“

轉儲文件”格式流,提交新的修訂版本到版本庫文件系統,發送進展反饋到標準輸出。

選項

--quiet (-q) --ignore-uuid --force-uuid --use-pre-commit-hook --use-post-commit-hook --parent-dir

例子

這里顯示了加載一個備份文件到版本庫(當然,使用

svnadmin dump):

$ svnadmin load /usr/local/svn/restored < repos-backup <<< Started new txn, based on original revision 1* adding path : test ... done.* adding path : test/a ... done. …

或者你希望加載到一個子目錄:

$ svnadmin load --parent-dir new/subdir/for/project /usr/local/svn/restored < repos-backup <<< Started new txn, based on original revision 1* adding path : test ... done.* adding path : test/a ... done. …

名稱

svnadmin lslocks — 打印所有鎖定的描述。

概要

svnadmin lslocks REPOS_PATH

描述

打印版本庫所有鎖定的描述。

選項

例子

顯示了版本庫/svn/repos中一個鎖定的文件:

$ svnadmin lslocks /svn/repos Path: /tree.jpg UUID Token: opaquelocktoken:ab00ddf0-6afb-0310-9cd0-dda813329753 Owner: harry Created: 2005-07-08 17:27:36 -0500 (Fri, 08 Jul 2005) Expires: Comment (1 line): Rework the uppermost branches on the bald cypress in the foreground.

名稱

svnadmin lstxns — 打印所有未提交的事物名稱。

概要

svnadmin lstxns REPOS_PATH

描述

打印所有未提交的事物名稱。關于未提交事物是怎樣創建和如何使用的信息見

“版本庫清理”一節。

例子

列出版本庫所有突出的事物。

$ svnadmin lstxns /usr/local/svn/repos/ 1w 1x

名稱

svnadmin recover — 將版本庫數據庫恢復到穩定狀態(只有在版本庫使用bdb作為后端時使用),此外,如果repos/conf/passwd不存在,它會創建一個默認的密碼文件。

概要

svnadmin recover REPOS_PATH

描述

在你得到的錯誤說明你需要恢復版本庫時運行這個命令。

選項

--wait

例子

恢復掛起的版本庫:

$ svnadmin recover /usr/local/svn/repos/ Repository lock acquired. Please wait; recovering the repository may take some time...Recovery completed. The latest repos revision is 34.

恢復數據庫需要一個版本庫的獨占鎖(這是一個“

數據庫鎖”;見“鎖定”的三種含義),如果另一個進程訪問版本庫,svnadmin recover會出錯:

$ svnadmin recover /usr/local/svn/repos svn: Failed to get exclusive repository access; perhaps another process such as httpd, svnserve or svn has it open?$

--wait選項可以導致

svnadmin recover一直等待其它進程斷開連接:

$ svnadmin recover /usr/local/svn/repos --wait Waiting on repository lock; perhaps another process has it open?### time goes by...Repository lock acquired. Please wait; recovering the repository may take some time...Recovery completed. The latest repos revision is 34.

名稱

svnadmin rmlocks — 無條件的刪除版本庫的一個或多個鎖定。

概要

svnadmin rmlocks REPOS_PATH LOCKED_PATH...

描述

從LOCKED_PATH刪除沒個鎖定。

選項

例子

這刪除了版本庫/svn/repos里tree.jpg和house.jpg文件上的鎖定:

$ svnadmin rmlocks /svn/repos tree.jpg house.jpg Removed lock on '/tree.jpg. Removed lock on '/house.jpg.

名稱

svnadmin rmtxns — 從版本庫刪除事物。

概要

svnadmin rmtxns REPOS_PATH TXN_NAME...

描述

刪除版本庫突出的事物,更多細節在

“版本庫清理”一節。

選項

--quiet (-q)

例子

刪除命名的事物:

$ svnadmin rmtxns /usr/local/svn/repos/ 1w 1x

很幸運,

lstxns的輸出作為rmtxns輸入工作良好:

$ svnadmin rmtxns /usr/local/svn/repos/ `svnadmin lstxns /usr/local/svn/repos/`

從版本庫刪除所有未提交的事務。


名稱

svnadmin setlog — 設置某個修訂版本的日志信息。

概要

svnadmin setlog REPOS_PATH -r REVISION FILE

描述

設置修訂版本REVISION的日志信息為FILE的內容。

這與使用

svn propset --revprop設置某一修訂版本的svn:log屬性效果一樣,除了你也可以使用--bypass-hooks選項繞過的所有pre-或post-commit的鉤子腳本,這在pre-revprop-change鉤子腳本中禁止修改修訂版本屬性時非常有用。

警告

修訂版本屬性不在版本控制之下的,所以這個命令會永久覆蓋前一個日志信息。

選項

--revision (-r) ARG --bypass-hooks

例子

設置修訂版本19的日志信息為文件msg的內容:

$ svnadmin setlog /usr/local/svn/repos/ -r 19 msg

名稱

svnadmin verify — 驗證版本庫保存的數據。

概要

svnadmin verify REPOS_PATH

描述

如果希望驗證版本庫的完整性可以運行這個命令,原理是通過在內部轉儲遍歷所有的修訂版本并且丟掉輸出。

例子

檢驗掛起的版本庫:

$ svnadmin verify /usr/local/svn/repos/ * Verified revision 1729.

總結

以上是生活随笔為你收集整理的svnadmin命令[转]的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。