zhou說: 安裝完svn後,建立一個svn倉庫,svnadmin create repository。 此時訪問地址爲svn://ip 便可。若是更換倉庫須要重啓svn服務svnserve -d -r /你的倉庫地址。 svn代碼庫地址就更新啦。svn遷移:點擊這裏. 注意:初始導入若是遇到沒法提交報錯(Authorization failed), 作以下修改:svnserve.conf中# password-db = passwd 改成 password-db = passwd
正式開始……………………………………………………………………………………centos
環境爲centos6.3 服務器
1.首先 看看機器上安裝了svn了沒有 svn
rpm -qa |grep svn測試
2.若是沒有安裝 執行url
yum -y install subversion spa
3.安裝好了以後 新建一個svn目錄code
mkdir /home/svnserver
4.新建一個版本倉庫進程
svnadmin create /home/svn/projectip
紅色部分是版本倉庫名 在配置文件中會使用的
5.將你須要放在svn上的工程 放進project目錄中
6.初始化一下你的版本倉庫
svn import 須要放到svn上的文件夾/ file:///home/svn/project -m 「版本說明」 --username xx --password xx
這裏須要注意的是 若是後邊不加用戶名和密碼 可能致使 客戶端在使用的時候 update時 不須要輸入用戶名和密碼就能夠update
7.添加用戶
要添加SVN用戶很是簡單,只需在/home/svn/project/conf/passwd文件添加一個形如「username=password」的條目就能夠了。爲了測試,我添加了以下內容:
[users]
# harry = harryssecret
# sally = sallyssecret
pm = pm_pw
8.修改用戶訪問策略
/home/svn/project/conf/authz記錄用戶的訪問策略,如下是參考:
[groups]
project_p = pm
#[project:/] 若是你的倉庫下邊就一個版本的話 就不須要使用xxx 直接一個斜槓就完事
#[project:/xxx] 若是你的倉庫下邊有多個版本的話xxx就是那個文件夾的名字
#上邊這2個根據本身狀況選一個
@project_p = rw
* =
說明:以上信息表示,只有project_p用戶組有根目錄的讀寫權。r表示對該目錄有讀權限,w表示對該目錄有寫權限,rw表示對該目錄有讀寫權限。最後一行的* =表示,除了上面設置了權限的用戶組以外,其餘任何人都被禁止訪問本目錄。這個很重要,必定要加上!
9.修改svnserve.conf文件,讓用戶和策略配置升效.
svnserve.conf內容以下:
[general]
anon-access = none
auth-access = write
password-db = /home/svn/project/conf/passwd
authz-db = /home/svn/project/conf/authz
10.啓動服務器
# svnserve -d -r /home/svn
注意:若是修改了svn配置,須要重啓svn服務,步驟以下:
# ps -aux|grep svnserve
# kill -9 ID號
# svnserve -d -r /home/svn
11.測試服務器
# svn co svn://192.168.x.x/project
12.到此爲止 獨立svn服務器就創建好了
須要注意的是 若是客戶端想要使用的話
url地址必定是這個樣子的 svn://192.168.x.x/project看好了 不是htttps的頭
若是想要使用http的頭的話 須要配置SVN服務器的HTTP支持
服務器重啓後,須要手動啓動svn服務器:
執行:svnserve -d -r /home/svn
或修改:/etc/rc.d/rc.local
在末尾加入:svnserve -d -r /home/svn
便可啓動服務器時,自動啓動svn
同一個服務端口,多版本庫管理(推薦)
首先你得給全部版本庫創建一個根目錄,好比/svn
而後再svnadmin create /svn/test1 ; svnadmin create /svn/test2 ......這樣創建多個版本庫。
而後每一個版本庫下面的/conf/的配置方法幾乎同樣,除了:
authz裏的目錄,即你在文中提到的問題須要加上 [test1:/] , [test2:/]來設置不一樣的版本庫根目錄的訪問權限。
開啓多個版本庫的svn server: svnserve -d -r /svn --注意,輸入根目錄便可
而後這些版本庫的訪問方式就是:
svn://your-id-address/test1, svn://your-ip-address/test2 了。(固然我假設你使用了默認的3690端口)
做者:朱清
連接:https://www.zhihu.com/question/36161509/answer/66276540
來源:知乎
著做權歸做者全部,轉載請聯繫做者得到受權。
啓動SVN服務:
svnserve -d -r /home/svn
/home/svn 爲版本庫的根目錄;
關閉SVN服務:
使用如下命令查找進程
ps aux | grep svn
# ps aux | grep svn root 64434 0.0 0.0 181584 1120 ? Ss 02:01 0:00 svnserve -d -r /home/svn root 64481 0.0 0.0 103256 848 pts/1 S+ 02:03 0:00 grep svn
使用Kill命令殺死進程
kill -s 9 64434
64434爲進程ID