天天看點

TortoiseSVN菜單項功能說明

TortoiseSVN菜單項功能說明

分類:

SVN(SubVersion)(19)

TortoiseSVN菜單項功能說明

版權聲明:本文為部落客原創文章,未經部落客允許不得轉載。

TortoiseSVN是windows下其中一個非常優秀的SVN用戶端工具。通過使用它,我們可以可視化的管理我們的版本庫。不過由于它隻是一個用戶端,是以它不能對版本庫進行權限管理。

TortoiseSVN不是一個獨立的視窗程式,而是內建在windows右鍵菜單中,使用起來比較友善。

TortoiseSVN每個菜單項都表示什麼意思

01、SVN Checkout(SVN取出)

點選SVN Checkout,彈出檢出提示框,在URL of repository輸入框中輸入伺服器倉庫位址,在Checkout

directory輸入框中輸入本地工作拷貝的路徑,點選确定,即可檢出伺服器上的配置庫。

02、SVN Update(SVN更新)

如果配置庫在本地已有工作拷貝,則取得最新版本隻是執行SVN Update即可,點選SVN

Update,系統彈出更新提示框,點選确定,則把伺服器是最新版本更新下來

03、Import(導入)

選擇要送出到伺服器的目錄,右鍵選擇TortoiseSVN----Import,系統彈出導入提示框,在URL of

repository輸入框中輸入伺服器倉庫位址,在Import

Message輸入框中輸入導入日志資訊,點選确定,則檔案導入到伺服器倉庫中。

04、Add(加入)

如果有多個檔案及檔案夾要送出到伺服器,我們可以先把這些要送出的檔案加入到送出清單中,要執行送出操作,一次性把所有檔案送出,如圖,可以選擇要送出的檔案,然後點選執行送出(SVN

Commit),即可把所有檔案一次性送出到伺服器上

05、Resolving Conflicts(解決沖突)

有時你從檔案庫更新檔案會有沖突。沖突産生于兩人都修改檔案的某一部分。解決沖突隻能靠人而不是機器。當産生沖突時,你應該打開沖突的檔案,查找以<<<<<<<開始的行。沖突部分被标記:

<<<<<<< filename

your changes

=======

code merged from repository

>>>>>>> revision

Subversion為每個沖突檔案産生三個附加檔案:

filename.ext.mine

更新前的本地檔案。

filename.ext.rOLDREV

你作改動的基礎版本。

filename.ext.rNEWREV

更新時從檔案庫得到的最新版本。

使用快捷菜單的編輯沖突Edit

Conflict指令來解決沖突。然後從快捷菜單中執行已解決Resolved指令,将改動送交到檔案庫。請注意,解決指令并不解決沖突,而僅僅是删除filename.ext.mineandfilename.ext.r*檔案并允許你送交。

06、Check for Modifications(檢查更新)

點選Check for

Modifications,系統清單是以待更新的檔案及檔案夾的狀态.

07、Revision Graph(版本分支圖)

檢視檔案的分支,版本結構,可以點選Revision

Graph,系統以圖形化形式顯示版本分支.

08、Rename(改名)

SVN支援檔案改名,點選Rename,彈出檔案名稱輸入框,輸入新的檔案名稱,點選确定,再把修改送出,即可完成檔案改名

09、Delete(删除)

SVN支援檔案删除,而且操作簡單,友善,選擇要删除的檔案,點選Delete,再把删除操作送出到伺服器

10、Moving(移動)

選擇待移動的檔案和檔案夾;按住右鍵拖動right-drag檔案(夾)到跟蹤拷貝内的新地方;松開左鍵;在彈出菜單中選擇move

files in Subversion to here

11、Revert(還原)

還原操作,如剛才對檔案做了删除操作,現在把它還原回來,點選删除後,再點選送出,會出現如上的提示框,點選删除後,再點選Revert,即已撤銷删除操作,如果這時候點選送出,則系統彈出提示框:沒有檔案被修改或增加,不能送出

12、Branch/Tag(分支/标記)

當需要建立分支,點選Branch/Tag,在彈出的提示框中,輸入分支檔案名,輸入日志資訊,點選确定,分支建立成功,然後可檢視檔案的版本分支情況

13、Switch(切換)

檔案建立分支後,你可以選擇在主幹工作,還是在分支工作,這時候你可以通過Switch來切換。

14、Merge(合并)

主幹和分支的版本進行合并,在源和目的各輸入檔案的路徑,版本号,點選确定。系統即對檔案進行合并,如果存在沖突,請參考沖突解決。

15、Export(導出)

把整個工作拷貝導出到本地目錄下,導出的檔案将不帶svn檔案标志,檔案及檔案夾沒有綠色的”√”符号标志。

16、Relocate(重新定位)

當伺服器上的檔案庫目錄已經改變,我們可以把工作拷貝重新定位,在To

URL輸入框中輸入新的位址

17、Add to IgnoreList(添加到忽略清單)

   大多數項目會有一些檔案(夾)不需要版本控制,如編譯産生的*.obj,

*.lst,等。每次送交,TortoiseSVN提示那些檔案不需要控制,挺煩的。這時候可以把這些檔案加入忽略清單。

18、SVN其它相關功能

   用戶端修改使用者密碼:

打開浏覽器,在位址欄内輸入​​http://192.168.1.250/cgi-bin/ChangePasswd​​,啟動用戶端修改使用者密碼的界面,輸入正确的使用者名,舊密碼,新密碼(注意密碼的位數應該不小于6,盡量使用安全的密碼),點選修改即可.

19、SVN Commit(版本送出)

把自己工作拷貝所做的修改送出到版本庫中,這樣别人在擷取最新版本(Update)的時候就可以看到你的修改了。

20、Show log(顯示日志)

顯示目前檔案(夾)的所有修改曆史。SVN支援檔案以及檔案夾獨立的版本追溯。

21、Repo-Browser(檢視目前版本庫)

檢視目前版本庫,這是TortoiseSVN檢視版本庫的入口,通過這個菜單項,我們就可以進入配置庫的資料總管,然後就可以對配置庫的檔案夾進行各種管理,相當于我們打開我的電腦進行檔案管理一樣。

22、Revision Graph(版本圖形)

檢視目前項目或檔案的修訂曆史圖示。如果項目比較大型的話,一般會建多個分支,并且多個裡程碑(穩定版本釋出),通過這裡,我們就可以看到項目的全貌。

23、Resolved(解決沖突)

如果目前工作拷貝和版本庫上的有沖突,不能自動合并到一起,那麼當你送出修改的時候,tortoisesvn就會提示你存在沖突,這時候你就可以通過這個菜單項來解決沖突。沖突的解決有兩種,一種是保留某一份拷貝,例如使用配置庫覆寫目前工作拷貝,或者反過來。還有一種是手動解決沖突,對于文本檔案,可以使用tortoiseSVN自帶的工具,它會列出存在沖突的地方,然後你就可以和送出者讨論怎麼解決這個沖突。同時它也對Word有很好的支援

24、Update toRevision(更新至版本)

從版本庫中擷取某一個曆史版本。這個功能主要是友善檢視曆史版本用,而不是復原版本。注意:擷取下來之後,對這個檔案不建議進行任何操作。如果你做了修改,那麼當你送出的時候SVN會提示你,目前版本已失效(即不是最新版本),無法送出,需要先update一下。這樣你所做的修改也就白費了。

25、Revert(復原)

如果你對工作拷貝做了一些修改,但是你又不想要了,那麼你可以使用這個選項把所做的修改撤銷

26、Cleanup(清除狀态)

如果目前工作拷貝有任何問題的話,可以使用這個選項進行修正。例如,有些檔案原來是版本控制的,但是你沒有通過tortoiseSVN就直接删除了,但是tortoiseSVN還是保留着原來的資訊(每個檔案夾下都有一個.svn的隐藏檔案夾,存放着目前檔案夾下所有檔案夾的版本資訊)是以這就會産生一些沖突。可以使用cleanup來清理一下。

27、GetLock/ReleaseLock(加鎖/解鎖)

如果你不想别人修改某個檔案的話,那麼你就可以把這個檔案進行加鎖,這樣可以保證隻有你對這個檔案有修改權。除非你釋放了鎖,否則别人不可能送出任何修改到配置庫中

28、Branch/tag(分支/标簽)

Branch是分支的意思。例如當在設計一個東西的時候,不同的人有不同的實作,但是沒有經過實踐檢驗,誰也不想直接覆寫掉其他人的設計,是以可以引出不同的分支。将來如果需要,可以将這些分支進行合并。

tag是打标簽的意思。通常當項目開發到一定程度,已經可以穩定運作的時候,可以對其打上一個标簽,作為穩定版。将來可以友善的找到某個特定的版本(當然我們也可以使用版本号來查找,但是數字畢竟不友善)

SVN對于分支和标簽都是采用類似Linux下硬連結的方式(同一個檔案可以存在兩個地方,删除一個不會影響另一個,所做修改會影響另一個),來管理檔案的,而不是簡單的複制一份檔案的拷貝,是以不會有浪費存儲空間的問題存在。

29、Export(導出)

這個功能是友善我們部署用。當我們需要釋出一個穩定版本時,就可以使用這個功能将整個工程導出到某個檔案夾,新的檔案夾将不會包含任何版本資訊了。

30、Relocate(版本庫轉移)

當我們版本庫發生轉移的時候就需要用到這個功能了。例如我原先的版本庫是建在U盤上的,現在轉移到(複制整個配置庫檔案夾)開發伺服器上,使用https代替檔案系統的通路。是以就需要将原來的工作拷貝的目标版本庫重新定位到開發伺服器上。

31、create patch(建立更新檔)

建立更新檔。如果管理者不想讓任何人都随便送出修改,而是都要經過稽核才能做出修改,那麼其他人就可以通過建立更新檔的方式,把修改資訊(更新檔檔案)發送給管理者,管理者稽核通過之後就可以使用apply

patch送出這次修改了。

非學,無以緻疑;非問,無以廣識

繼續閱讀