TortoiseSVN 命令
TortoiseSVN 命令
檢出
svn checkout [-depth ARG] [--ignore-externals] [-r rev] URL PATH深度選項框跟-depth參數相關
如果希望忽略外部被選中,使用--ignore-externals選型。
如果你正在檢出特定的修訂版本,在URL后使用-r指定。
更新
svn info URL_of_WC svn update [-r rev] PATH更新多個項目在Subversion還不是原子操作,所以TortoiseSVN會首先找到版本庫的HEAD修訂版本,然后將所有項目更新到特定修訂版本,防止出現混合修訂版本的工作副本。
如果只有一個項目被選中更新,或選中的項目來自不同的版本庫,TortoiseSVN只會更新到HEAD。
沒有使用命令行選項,更新到修訂版本也實現了更新命令,但提供了更多的選項。
更新到版本
svn info URL_of_WC svn update [-r rev] [-depth ARG] [--ignore-externals] PATH深度選項框跟-depth參數相關
如果希望忽略外部被選中,使用--ignore-externals選型。
提交
在TortoiseSVN,提交對話框使用Subversion命令,第一部分是檢查工作副本哪些文件可能被提交,然后你可以檢查列表,比較與BASE的區別,選擇你希望提交包含的項目。
svn status -v PATH如果選擇了顯示未版本控制的文件,TortoiseSVN會遵循忽略規則顯示工作目錄中所有未版本控制的文件和文件夾。這個特性在Subversion中沒有等價操作,因為svn status?命令不掃描未版本控制的文件夾。
如果你選擇了未版本控制的文件和文件夾,這些項目都會先增加到你的工作副本。
svn add PATH...當你點擊確認,開始執行Subversion提交。如果你不修改所有的文件檢查框,TortoiseSVN 會遞歸提交工作副本。如果你取消選擇一些文件,那么就必須使用非遞歸提交 (-N) ,每個路徑都必須在命令行上單獨指定。
svn commit -m "LogMessage" [-depth ARG] [--no-unlock] PATH...日志消息是日志編輯框的內容。它可以為空。
如果選擇了保持鎖,就使用--no-unlock開關。
差異
svn diff PATH如果你在右鍵菜單使用差異,就會將修改的文件與基礎版本比較。控制臺的命令輸出也是執行這個操作,輸出統一差異格式。然而,TortoiseSVN并不采用這種方式。TortoiseSVN 使用TortoiseMerge (或者你選擇的比較差異程序)可視化的全文顯示差異,所以它沒有相同的控制臺操作。
你可以使用TortoiseSVN,比較任意兩個文件的差異,不管他們是否受版本控制。TortoiseSVN只是把這兩個文件傳遞給已經選擇的比較差異程序,讓它比較差異。
顯示日志
svn log -v -r 0:N --limit 100 [--stop-on-copy] PATH 或 svn log -v -r M:N [--stop-on-copy] PATH默認情況下,TortoiseSVN嘗試用--limit方法取得100個日志消息。如果設置了讓它使用舊借口,那么就使用第二種個是獲得100個日志消息。
如果選擇了停止于復制/改名,就使用--stop-on-copy開關。
檢查修改
svn status -v PATH 或 svn status -u -v PATH只在你的工作副本執行初始的狀態檢查。如果你點擊檢查版本庫,那么也檢查版本庫,察看哪些文件會被更新操作修改,它需要-u開關。
如果選擇了顯示未版本控制的文件,TortoiseSVN會遵循忽略規則顯示工作目錄中所有未版本控制的文件和文件夾。這個特性在Subversion中沒有等價操作,因為svn status?命令不掃描未版本控制的文件夾。
版本圖
版本圖是TortoiseSVN特有的,命令行客戶端沒有等價實現。
TortoiseSVN執行了這些操作
svn info URL_of_WC svn log -v URL其中URL是版本庫的?根,然后分析返回數據。
版本庫瀏覽器
svn info URL_of_WC svn list [-r rev] -v URL你可以使用svn info檢查版本庫的根,它在版本庫瀏覽器的頂級顯示。你不能瀏覽它的上級目錄。同樣,這個命令返回所有顯示在版本庫瀏覽器的鎖信息。
給出URL和可選的版本號,svn list列出目錄中的內容。
編輯沖突
這個命令沒有控制臺等價實現。它調用TortoiseMerge或者外部三路差異/合并工具察看棘手的沖突,挑選出沖突行。
已解決
svn resolved PATH改名
svn rename CURR_PATH NEW_PATH刪除
svn delete PATH恢復
svn status -v PATH首先開始狀態檢查,察看你的工作副本有哪些項目可以被撤銷。你可以復審文件列表,檢查這些文件的修改,然后選擇你要撤銷的項目。
當你點擊確認時,開始Subversion撤銷操作。如果你不修改所有的文件檢查框,TortoiseSVN 會遞歸撤銷 (-R)工作副本的修改。如果你取消選擇一些文件,那么就必須使用非遞歸撤銷 ,每個路徑都必須在命令行上單獨指定。"
svn revert [-R] PATH...清理
svn cleanup PATH獲得鎖
svn status -v PATH首先開始狀態檢查,察看你的工作副本有哪些項目可以被加鎖。你可以選擇想加鎖的項目。
svn lock -m "LockMessage" [--force] PATH...加鎖信息是加鎖編輯框的內容。它可以為空。"
如果選擇了強制鎖定?,就使用--force開關。
釋放鎖
svn unlock PATH分支/標記
svn copy -m "LogMessage" URL URL 或 svn copy -m "LogMessage" URL@rev URL@rev 或 svn copy -m "LogMessage" PATH URL分支/標簽對話框在版本庫執行復制。有三個單選按鈕:
- 版本庫中的最新版本
- 指定版本庫中的版本
- 工作副本
對應上面的三個命令行參數。
日志消息是日志編輯框的內容。它可以為空。
切換
svn info URL_of_WC svn switch [-r rev] URL PATH合并
svn merge [--dry-run] --force From_URL@revN To_URL@revM PATH測試合并與使用--dry-run選項的合并相同。
svn diff From_URL@revN To_URL@revMUnified diff顯示了用來合并的區別操作。
輸出
svn export [-r rev] [--ignore-externals] URL Export_PATH這個形式是當從一個未版本控制目錄訪問,并且文件夾作為目標。
導出一個工作副本到一個目錄沒有使用Subversion的庫,所以沒有等同的命令行匹配。
TortoiseSVN做的只是將所有文件復制到一個新的位置,并且會顯示操作的過程。未版本控制的文件/文件夾也可以被導出。
在兩種情況下,如果Omit externals被選中,就相當于使用了--ignore-externals選項。
重新定位
svn switch --relocate From_URL To_URL在當前位置創建版本庫
svnadmin create --fs-type fsfs PATH添加
svn add PATH...如果選擇了一個文件夾,TortoiseSVN會首先會遞歸的訪問可以添加的條目。
導入
svn import -m LogMessage PATH URL日志消息是日志編輯框的內容。它可以為空。
追溯
svn blame -r N:M -v PATH svn log -r N:M PATH如果你使用TortoiseBlame來查看追溯信息,文件日志也需要在工具提示上顯示日志信息,如果你以文件方式查看追溯,這個信息是不需要的。
加入忽略列表
svn propget svn:ignore PATH > tempfile {編輯新的忽略內容到tempfile文件中} svn propset svn:ignore -F tempfile PATH因為svn:ignore屬性通常是多行的,這里是通過文件顯示所修改的內容,而不是直接使用命令行操作。
創建補丁
svn diff PATH > patch-fileTortoiseSVN通過比較工作拷貝和基礎版本(BASE version),使用統一的diff(差異)格式創一個補丁文件。
應用補丁(Apply Patch)
如果補丁和工作副本不是同一版本的話,那么應用補丁會是一件很棘手的事情。幸運的是,你可以使用 TortoiseMerge(在Subversion中沒有等同的工具)。
總結
以上是生活随笔為你收集整理的TortoiseSVN 命令的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: qemu编译
- 下一篇: 自动化测试工程师简历