【前言】
SVN是一個開放的、免費的版本控制管理工具,相比CVS,Perforce等其他工具,SVN在版本模型,鎖定策略方面要更加靈活高效。下面就讓我們開始一步一步地學習如何使用SVN,如何把版本控制融入到日常工作中,更重要的是在學習版本控制的過程中樹立起團隊合作的理念。
關于SVN的參考資料,最好的莫過于其官方文檔《Version Control with Subversion》,作為新手一定要看的是里面的第一章《Fundamental Concepts》和第二章《Basic Usage》以及第九章《Subversion Complete Reference》。
為了做到真正的In Action,我采用了Step-by-Step的方式,模擬一個項目從檢出項目開始,到修改本地副本,再到提交變更,解決沖突等一系列的實際工作中會遇到的場景,期望通過這些場景和任務來對SVN和版本控制、團隊合作有一個基本的認識
【讀者范圍】
本系列文章并不是入門文章,對于對版本控制和SVN完全一無所知的新手,你需要從頭閱讀SVN的官方文檔(就是我前面提到的第一、二、九章),如果你想快速入門在我的博客上也提供了一系列的文章,請參考《版本控制之路系列》來獲得快速的認識。
請先確保你已經了解了以下的知識:
A. SVN是什么?SVN有什么好處? SVN中的Repository和Working copy的概念
B. SVN的服務端和客戶端軟件的安裝
C. SVN的passwd和authz文件的配置
D. SVN如何和Apache服務器搭配
E. SVN的常用命令含義(例如svn svnlook svnadmin svnsync)及其子命令
【閱讀順序】
本系列是我學習、實踐SVN過程的再現,對于新手推薦你按照順序一一閱讀,它會引導你一步步由淺到深地認識SVN。如果你已經有了SVN的使用經驗,可以參考下面的目錄自由地選擇你感興趣的章節閱讀。
【環境】
我的SVN服務端是CollabNet提供的,它把Apache和SVN綁定到一起,省去了單獨下載Apache和SVN的麻煩。關于如何配置Apache和SVN,請參考我之前寫過的另一篇文章:《使用Apache和SSL搭建安全的SVN訪問》。
至于SVN客戶端,我采用的是命令行。雖然TortoiseSVN作為一款非常出色的SVN客戶端工具將所有的操作都界面化了,但我還是推薦你使用最基本的命令行---這能讓你更快地熟悉SVN的同時知道自己到底做了什么。
【約定】
為了統一場景,下面我會使用一些約定,具體包括:
項目名稱: ECoupon
版本庫路徑: C:\Develop\MyRepository\Workspace
版本庫URL: http://localhost:8000/svn/Workspace
本地工作副本:E:\Tmp\ECoupon
臨時工作副本:E:\Temp\ECoupon_tmp
其中本地工作副本和臨時工作副本都是從版本庫的同一個位置檢出,前者是默認的副本(多數的實驗都基于該副本進行),后者是為了演示某些操作而是用的(例如合并操作)。在沒有特殊說明的情況下,我們的實驗都將基于該項目和版本庫進行。
示例中的路徑是可變的,你可以在你認為合適的任意路徑下安裝SVN,創建版本庫并進行實驗
本文假設你已經成功地在本地安裝了SVN軟件,而且配置了相關的用戶安全性驗證,而且版本庫就在你的機器上(確保你有足夠的權限從本地訪問版本庫,這會影響到后面某些示例的執行)
本文假設你使用的是Windows操作系統
本文假設你對DOS的一些常見命令和批處理命令有一定的認識
【目錄】
SVN In Action (1)
--創建一個版本庫
--訪問版本庫
--svn list和svnlook tree命令
SVN In Action (2)
--在版本庫中創建目錄
--為項目添加版本控制功能
SVN In Action (3)
--查看項目的版本控制信息
--查看項目的實時狀態信息
SVN In Action (4)
--添加新的內容到版本控制
--更新本地工作副本
SVN In Action (5)
--忽略已版本控制的資源:單個文件
SVN In Action (6)
--忽略已版本控制的資源:多個文件
SVN In Action (7)
--忽略已版本控制的資源:整個目錄
SVN In Action (8)
--查看版本庫資源內容
SVN In Action (9)
--比較本地工作副本和版本庫的差異
--同時更新本地副本和提交本地變更
SVN In Action (10)
--撤銷本地的修改:回滾文件的內容
SVN In Action (11)
--撤銷本地的修改:回滾屬性和操作
SVN In Action (12)
--svn update與svn revert
--svn del與svn revert
SVN In Action (13)
--回滾到指定的版本
SVN In Action (14)
--回滾到指定的版本:使用svn update -r 命令
--回滾到指定的版本:使用svn copy命令
--回滾到指定的版本:使用svn cat命令配合重定向
SVN In Action (15)
--解決沖突和比較差異
SVN In Action (16)
--創建分支
SVN In Action (17)
--切換分支
SVN In Action (18)
--從主干更新分支
SVN In Action (19)
--使用分支更新主干
SVN In Action (20)
--分支的生命周期
SVN In Action (21)
--標記
--主干、分支與標記的配合
SVN In Action (22)
--資源的鎖定與清理
SVN In Action (23)
--SVN日常操作基本命令總結
-------------------------------------------------------------
生活就像打牌,不是要抓一手好牌,而是要盡力打好一手爛牌。
posted on 2009-12-13 12:29
Paul Lin 閱讀(3477)
評論(5) 編輯 收藏 所屬分類:
項目管理