Subversion完整的參考文件
(英) http://svnbook.red-bean.com/
(中) http://svn.stu.edu.tw/svnbook/
(Q&A) http://subversion.tigris.org/faq.html
如何安裝 svn server 端
#apt-get install subversion
與Apache 結合的套件
#apt-get install libapache2-svn
如何使用 svn server 端
建立起 svn 的 repository 的 tree
其主要有三種類型的指令
1. 管理 (svnadmin) : 主要是控制及管理project版本的整體的架構
2. 查詢 (svnlook) : 主要是查詢關於版本的相關資訊
3. 服務 (svnserve) : 處理其對外的服務設定
使用最基本的架設....
建立使用群組
#groupadd svnbrook
將自己(brook)及www-data(apapch2帳戶)添加至該群組 #vi /etc/group
最後一行就改成 svnbrook:x:1001:brook,www-data #mkdir /home/svn #建立svn資料庫的父路徑 #cd /home/svn
#mkdir myproject01 #建立svn資料庫的專案目錄
#svnadmin create /home/svn/myproject01 #使用svn命令,建立svn資料庫
此時你可以在 myproject01 下看到
conf dav db format hooks locks README.txt
#chown -R root:subversion myproject #更改目錄群組
#chmod -R g+rws myproject #增加群組用戶讀寫及新增目錄權限
若要用 apache 做為連結管道再設定下述 (在此我們用 ssh 做為連結管道)
#vi /etc/apach2/mods-available/dav_svn.conf
加入
<Location /svn/myproject01>
DAV svn
SVNPath /home/svn/myproject01
AuthType Basic
AuthName "myproject subversion repository"
AuthUserFile /etc/subversion/passwd
<LimitExcept GET PROPFIND OPTIONS REPORT>
Require valid-user
</LimitExcept>
</Location>
再增加使用者及密碼
#cd /etc/subversion
#touch passwd
#htpasswd -c passwd brook
New password:
Re-type new password:
Adding passwd for user brook
重新啟動 apache2
#/etc/init.d/apache2 restart
你就可以在網頁上看到資訊
如何使用 svn client 端
其主要指令是 svn 來處理..基本的資料夾加刪...
當我們是用 ssh 連入 svn server 時
svn co svn+ssh://使用者id@hostname或hostip/home/svn/myproject
連續輸入兩次使用者密碼即可進入
先使用 svn update 更新至最新版本 以避免 conflict
再使用 svn commit
要將資料上傳時 再使用 svn add + 增加的資料夾及檔案
這時會有設定...將要上傳的資料加入 設定中即可
如何使用 svn 更新檔案
在 svn server 端 是記載版本的變更
故..................看不到修定的版本結果
在 svn server 須使用 checkout 將 更新的資訊取出
在本機新開的資料夾 brooktmp
#mkdir brooktmp
#cd brooktmp
#svn co file:///home/svn/myproject01
在 brooktmp 的資料夾中 即有最新版本的 myproject01 的資料夾
將 svn server 連上網路使用
你可以使用 Apache2 的 http 網頁設定 或 其 SSL 的 https 設定
在此我們是使用 ssh 連入
先用 WINSCP 將新更改的版本 Copy (F5) 置入 電腦 (Server 或另一台電腦)
再用 svn 更新之 (另一台電腦需再用 ssh+svn 連入 Server)
reference:
http://svn.stu.edu.tw/svnbook/book.html#svn-ch-5-sect-4.2.1
http://www.duduwolf.com/post/setting_up_subversion.asp
http://www.blogjava.net/pandawang/archive/2006/09/05/67844.html
沒有留言:
張貼留言