天天看點

Ubuntu 14.04安裝SVN使用記錄

近期經理給找了個活,在公司的雲伺服器上搭一個SVN,分出兩個賬戶,一個能讀寫,另一個隻能讀

  • 公司的雲伺服器是Ubuntu14.04版本的,上網查了查資料,開始搭,用了一上午才跑通
  • 用apt-get下載下傳Subversion(因為是Ubuntu),這裡我都是用sudo指令執行的
sudo apt-get install subversion
           
  • 檢查一下svn是否安裝成功
  • 查詢後會出現版本号等資訊,這說明安裝成功,然後我們需要建立SVN賬戶群組,這也是為了以後友善實用
sudo adduser svnuser
sudo addgroup subversion
sudo addgroup svnuser subversion
           
  • 使用者群組建立完畢後,我們需要建立項目位址
cd /srv
sudo mkdir svn
cd svn
sudo mkdir license_repository
#給license_respository檔案夾設定組和使用者還有權限
sudo chown -R root:subversion license_repository
sudo chmod -R g+rws license_repository 
           
  • 建立SVN檔案倉庫
sudo svnadmin create /srv/svn/license_repository
           
  • 通路方式及項目的導入
svn co file:///srv/svn/license_repository
#或者
svn co file://localhost/srv/svn/license_repository
#注意:
#如果您并不确定主機的名稱,您必須使用三個斜杠(///),而如果您指定了主機的名稱,則您必須使用兩個斜杠(//).
#下面的指令用于将項目導入到SVN 檔案倉庫:
svn import -m "New import" /srv/svn/license_repository file:///home/svnuser/src/fitness
#一定要注明導入資訊
           
  • 通路權限的設定
#修改配置檔案
vim /srv/svn/license_repository/conf/svnserve.conf
#如下修改
[general]
#匿名使用者不可讀
anon-access=none
#權限使用者可以寫入
auth-access=write
#密碼檔案為passwd
password-db=passwd
#權限檔案為authz
authz-db=authz
#輸入:wq退出vim,然後修改authz檔案
vim /srv/svn/license_repository/conf/authz
#按如下修改
[groups]
#設定管理者組 設定admin組的使用者為tone admin組有rw權限 而另外設定一個clientele組,除admin組外均為隻讀權限
admin=developer
clientele=client1,client2
[/]
@admin=rw
*=r
#:wq退出vim編輯器,然後去修改passwd檔案,來修改使用者的密碼
vim /srv/svn/license_repository/conf/passwd
[users]
developer=power
client1=test11
client2=test22
           
  • 至此,配置檔案編輯完畢,可以啟動svn了,這裡需要注意的是,之前不論是檔案夾還是賬戶,均是由sudo指令建立的,是以執行啟動時也必須用sudo指令,否則svn伺服器将無法操作檔案夾
#這裡 d是指以守護程序的方式運作 r是指定檔案系統的根路徑(版本庫的根目錄) 這樣通路的時候不用輸入完整路徑即可通路
sudo svnserve -d -r /srv/svn
#例如svn://192.168.0.1/license_repository
           
  • 啟動完畢後,檢視程序情況
  • 顯示這條程序正在運作,即可通過用戶端通路了,我是使用的windows系統上安裝的svn通路的,建立一個想要把檔案down到這裡的檔案夾,右鍵,選擇checkout,在url一欄輸入位址,例如svn://192.168.0.1/license_repository,然後确定,會提示輸入賬号密碼,按照之前設定好的SVN賬号密碼即可使用,經過測試,admin組使用者可以讀寫,而clientele組使用者隻能讀不能寫,實驗成功.

繼續閱讀