-
TortoiseSVN
鎖定
- 版 本
- Subversion
- 類 型
- 客户端
- 應 用
- 超越時間的管理文件和目錄
TortoiseSVN定義
版本控制是管理信息修改的藝術,它一直是程序員最重要的工具,程序員經常會花時間作出小的修改,然後又在某一天取消了這些修改,想象一下一個開發者並行工作的團隊 - 或許是同時工作在同一個文件!- 你就會明白為什麼一個好的系統需要管理潛在的混亂。
某些版本控制系統也是軟件配置管理(SCM)系統,這種系統經過精巧的設計,專門用來管理源代碼樹,並且具備許多與軟件開發有關的特性 - 比如,對編程語言的支持,或者提供程序構建工具。不過 Subversion 並不是這樣的系統;它是一個通用系統,可以管理任何類型的文件集,包括源代碼。
TortoiseSVN發展歷史
在2002年,Tim Kemp 發現 Subversion 是一個很好的版本控制系統,但是沒有好的圖形化客户端,創建一個作為 Windows 外殼集成的 Subversion 客户端的創意來自 TortoiseCVS,一個非常類似的 CVS 客户端。
Tim 學習了 TortoiseCVS 的源代碼,將其作為 TortoiseSVN 的基礎,然後開始這個項目,註冊了域名 tortoisesvn,並將源代碼提交到網上。此時 Stefan Küng 正在尋找一個好的免費版本控制系統,他發現了 Subversion 和 TortoiseSVN,由於 TortoiseSVN 還不能夠使用,他加入了這個項目並開始編程。很快他便重寫了大多數代碼,並且開始添加命令和特性,此時,最初的代碼都已經不復存在了。
隨着 Subversion 越來越穩定,吸引了越來越多的用户開始使用 TortoiseSVN 作為他們的 Subversion 客户端。用户羣增長迅速(每天都持續增長)。Lübbe Onken 提供了許多漂亮圖標和 TortoiseSVN 的 logo,細心照料網站並且管理翻譯。
2013年6月13日,Wandisco收購TortoiseSVN[dot]Net, TortoiseSVN leader - Stefan Küng加入Wandisco,有了Apache subversion領導開發者Wandisco的支持,TortoiseSVN將會有更多的改進。
[2]
TortoiseSVN特性
是什麼讓 TortoiseSVN 成為一個好的 Subversion 客户端?下面是一個簡短的特性列表。
TortoiseSVN可選的網絡層
Subversion 在版本庫訪問方面有一個抽象概念,利於人們去實現新的網絡機制,Subversion 的“高級”服務器是 Apache 網絡服務器的一個模塊,使用 HTTP 的變種協議 WebDAV/DeltaV 通訊,這給了 Subversion 在穩定性和交互性方面很大的好處,可以直接使用服務器的特性,例如認證、授權、傳輸壓縮和版本庫瀏覽等等。也有一個輕型的,單獨運行的 Subversion 服務器,這個服務器使用自己的協議,可以輕鬆的用 SSH 封裝。
TortoiseSVN數據處理
高效的分支和標籤
分支與標籤的代價不與工程的大小成比例,Subversion 建立分支與標籤時只是複製項目,使用了一種類似於硬鏈接的機制,因而這類操作通常只會花費很少並且相對固定的時間,以及很小的版本庫空間。
TortoiseSVN維護能力
Subversion 沒有歷史負擔,它由一系列良好的共享 C 庫實現,具有定義良好的 API,這使 Subversion 非常容易維護,可以輕易的被其他語言和程序使用。
TortoiseSVN外殼集成
並且你不一定必須使用 Windows 資源管理器,TortoiseSVN 的右鍵菜單可以工作在其他文件管理器,以及文件/打開對話框等標準的 Windows 應用程序中。你必須牢記,TortoiseSVN 是有意作為 Windows 資源管理器的擴展開發,因此在其他程序可能集成的並不完整,例如重載圖標可能不會顯示。
TortoiseSVN重載圖標
每個版本控制的文件和目錄的狀態使用小的重載圖標表示,可以讓你立刻看出工作副本的狀態。
TortoiseSVN簡便訪問
Subversion 命令的簡便訪問
因為 TortoiseSVN 是一個 Subversion 客户端,我們也很願意為你展示一些 Subversion 本身的特性:
TortoiseSVN目錄版本控制
TortoiseSVN原子提交
提交要麼完全進入版本庫,要麼一點都沒有,這允許開發者以一個邏輯塊提交修改。
版本控制的元數據
每個文件和目錄都有一組附加的“屬性”,你可以發明和保存任意的鍵/值對,屬性是版本控制的,就像文件內容。
TortoiseSVN安裝
TortoiseSVN的界面已經翻譯成了許多種語言,所以你可以下載符合你要求的語言包。你可以在我們的翻譯狀態頁裏看到語言包。如果沒有你需要的,為什麼不加入我們的團隊並且提交你的翻譯呢?
每一種語言包都是一個.exe安裝程序,只要根據嚮導運行安裝程序,當你下一次啓動程序時,翻譯就會生效。
拼寫檢查器
TortoiseSVN包括了一個拼寫檢查器,可以檢查你的提交日誌信息,當你的項目語言不是你的本地語言時尤其有用,拼寫檢查器使用OpenOffice和Mozilla相同的詞典。
安裝程序會自動增加了美國和英國英語詞典。如果你想用其他語言,最簡單的方法是簡單地安裝一個TortoiseSVN的語言包。它將安裝合適的詞典文件以對應本地用户的TortoiseSVN界面。字典將在下次啓動時可用。
或者你也可以自己安裝詞典。如果你安裝了OpenOffice或Mozilla,你可以複製這些詞典,位於那些應用的安裝目錄。否則,你需要從網絡上下載必要的詞典文件。
一旦你得到了詞典文件,你可能需要重命名文件,這樣文件名只包含位置信息,例如:
en_US.aff
en_US.dic
然後把它們複製到TortoiseSVN安裝目錄的bin子目錄,通常情況下,可能是在C:\ProgramFiles\TortoiseSVN\bin。如果你不希望弄亂bin子目錄,你可以將拼寫檢查文件放置在C:\ProgramFiles\TortoiseSVN\Languages,如果那個目錄不存在,你可以自己創建,當你下次啓動TortoiseSVN時,就可以使用拼寫檢查器。
如果你安裝了多個詞典,TortoiseSVN使用下面的規則選擇一個。
檢查tsvn:projectlanguage設置,關於設置項目屬性可以參考“項目設置”一節。
如果沒有設置項目語言,或者那個語言沒有安裝,嘗試使用對應Windows區域信息的語言。
如果精確的Windows區域信息不起作用,可以試一下“基礎”語言,例如將de_CH(Swiss-German)修改為de_DE(German)。
TortoiseSVN使用技巧
TortoiseSVN檢出代碼
初次使用TortoiseSVN的時候,你需要將服務器的代碼下載到本地,這就是SVN Checkout(SVN檢出)。檢出的步驟如下
第二步,從SVN倉庫檢出(checkout)一個應用的全部版本代碼,右鍵–>點擊“SVN Checkout”
在彈出頁面中填寫倉庫URL即可,其它默認參數即可,如圖3:
點擊“OK”,出現下載界面,如圖4:
如果一切順利,vyes應用所有版本代碼將會全部出現在剛剛創建的vyes文件夾下文件夾,Log中最後的Revision表示檢出的當前SVN倉庫的代碼版本,1是指vyes的第一個版本,如圖5:
TortoiseSVN提交代碼
圖6 右鍵菜單的commit(4張)
剛剛修改過的global.css變色了。下面需要提交(commit)最近的更新。在global.css上擊右鍵,出現菜單 ,選擇“SVN commit”,
然後填寫關於本次更新的日誌(log message),這是必填項,否則commit會失敗。
當您看到提交成功界面,表明剛才的修改已經成功提交,並且前該vyes項目的SVN版本號加1,變成91了。關於SVN的版本號是全局的,也就是説SVN倉庫中的所有文件變更都共享一個版本號序列,所以如果查看某個文件,或者目錄的log,可以發現版本號可能並不是依次遞增。
TortoiseSVN新增文件
在 SVN工作目錄下,對於文件修改,完成後只需要commit就ok了,但對於新增文件,或者從其它目錄複製進來的文件或文件夾,需要在commit之前需 要做一步add操作,即將文件或文件夾添加到svn工作目錄中來,否則SVN客户端不認它。具體操作很簡單,如圖10:
然後右鍵commit即可,commit之後,在瀏覽器上輸入你的應用地址就能訪問了。
TortoiseSVN版本發佈
TortoiseSVN 1.7.11發佈
- 參考資料
-
- 1. SVN客户端 TortoiseSVN .開源社區網[引用日期2012-09-22]
- 2. Wandisco收購TortoiseSVN.net .yahoo財經[引用日期2013-06-14]
- 3. TortoiseSVN 1.7.4 發佈 .開源社區網[引用日期2012-09-24]
- 4. TortoiseSVN 1.7.6 發佈 .開源社區網[引用日期2012-09-24]
- 5. TortoiseSVN 1.7.7 發佈,SVN客户端 .開源社區網[引用日期2012-09-24]
- 6. TortoiseSVN 1.7.8 發佈 .開源社區網[引用日期2012-09-24]
- 7. TortoiseSVN 1.7.9 .開源社區網[引用日期2012-09-24]
- 8. 當前版本是 1.14.5 .TortoiseSVN[引用日期2023-04-11]