架一個 Subversion Server 主要有 2 個工作要做︰
1. 建立 svn檔案系統
(1) 先安裝 subversion 套件及 apache2 的 svn 模組
sudo apt-get install subversion libapache2-svn(2) 在系統中建立 svn 的檔案庫目錄︰
sudo mkdir /path_to_svn_repository/(3) 在 /path_to_svn_repository/ 建立 svn 的檔案系統
sudo svnadmin create /path_to_svn_repository/(4) 設定使用權限給 apache2
sudo chown -R www-data:www-data /path_to_svn_repository/
2. 在 apache2 上設定好 subversion 模組(這邊假設已經安裝及設定好基本的 apache2 系統)︰
(1) 建立並編輯 dav_svn.conf
sudo a2enmod dav_svn
sudo vim /etc/apache2/mods-avaliable/dav_svn.conf
將檔案內的以下文字前的 # 號刪除,若檔案不存在,可使用
#顯示在 URL 上的路徑 ex︰http://localhost/svn
DAV svn
/path_to_svn_repository/
SVNPath #設定檔案庫的路徑
AuthType Basic
AuthName "Subversion Repository"
AuthUserFile /etc/apache2/dav_svn.passwd
AuthzSVNAccessFile /etc/apache2/dav_svn.authz
Require valid-user
(2) 設定使用者權限 : dav_svn.authz
sudo vim /etc/apache2/dav_svn.authz # 若原本不存在,則直接建立在檔內加入以下內容︰
# 定義群組(3) 設定使用者密碼
[groups]
admin = admin1
users = user1
# 定義目錄權限
[/] # "/"為 svn 的根目錄,亦即SVNPath 所定義的目錄
,可調整為其下的目錄路徑
*=
@admin = rw #admin 群組具有讀寫權限
@user = r #user群組僅有讀取權限
sudo /usr/bin/htpasswd -c /etc/apache2/dav_svn.passwd admin1(4) 重新啟動 apache2
sudo /usr/bin/htpasswd -c /etc/apache2/dav_svn.passwd user1
sudo /etc/init.d/apache2 restart#########################################################
接著就可以使用瀏覽器開打 svn 的網址看看
http://hostname/svn/如果設定正確的話,應該會出現類似以下的字樣︰
#########################################################svn - Revision 0: /
Powered by Subversion version 1.5.4 (r33841).
關於 SVN client 程式的選用,若是在 windows 系統下,可使用 TortoiseSVN ,算是相當方便好用的。而Linux 系統則可以採用 RapidSVN 做為 client ,也是視窗模式介面。
如果寫程式是使用 Eclipse 的話,還可以從 Eclipse 內直接上線安裝 Subclipse plugin ,方便控制版本。若是 Microsoft Visual Studio 的開發環境,則可以使用 ankhsvn 做版本控制。
2 comments:
好
好屁..
Post a Comment