1. 程式人生 > >服務端 安裝配置 svn

服務端 安裝配置 svn

服務器 cti 修改配置文件 pos 添加 火墻 general 獨立 例如

檢查是否安裝svn

  svn --version 看看,既能確定是否安裝,又能確定版本多少

安裝 svn
  yum -y install subversion

創建倉庫存放目錄

  mkdir -p /opt/svn/Warehouse #Warehouse 倉庫目錄名稱

創建倉庫

  svnadmin create /opt/svn/Warehouse

svn 文件夾設置 所屬用戶組/用戶

  chown -R svn:svn /opt/svn/


倉庫權限 ( 這個地方的是指 svn/conf/ 的 總配置文件,可以單獨設置單個倉庫的,語法一樣)

vi svnserve.conf
[general]
anon
-access=none #不允許匿名用戶訪問 auth-access=write #通過驗證的用戶可以讀和寫 password-db=passwd #用戶密碼管理文件 authz-db=authz #用戶權限管理文件 realm=/opt/svn/Warehouse #倉庫地址

添加 svn 用戶

  vi authz
  [/]
  zw=rw #用戶名=讀寫

設置 svn 用戶密碼

  vi passwd
  zw=123 #用戶名=密碼

啟動 Warehouse倉庫 ( 端口默認:3690 )
  svnserve -dr /var/svn/Warehouse # /var/svn/Warehouse 倉庫地址

  svnserve -dr /var/svn/m --listen-port 3691 # 指定端口

查看是否啟動

  pstree | greg svn

查看啟動端口

  netstat -tunpl | grep svn

檢出倉庫(切換到想要檢出到的目錄,例如 cd /home/www/)

   svn co svn://121.199.5.128 ./ # ./ 檢出到當前目錄

   # 按照要求輸入 賬號密碼

客戶端提交自動更新服務端文件 

1)cd /var/svn/m/hooks  # 切換到你倉庫的 hooks 文件下
2)cp post-commit.tmpl post-commit  # 改成一個腳本
3)chomd a+x post-commit # 賦予權限 4)vi post-commit   export LANG=en_US.UTF-8   #svn up --non-interactive --username zw --password 123 /usr/local/src/web/m svn up --non-interactive --username 登錄倉庫用戶名 --password 登錄倉庫密碼 倉庫絕對路徑

設置用戶權限(登錄終端用戶)

自動在應用下生成文件或目錄,所以 用戶 要對 yzmedu 和 倉庫 目錄有充分的權限
setfacl -m u:daemon:rwx -R /usr/local/src/web/yzmedu
setfacl -m d:u:daemon:rwx -R /usr/local/src/web/yzmedu

開放svn 端口 

設置 iptables 防火墻,把 3690 和 3691 端口打開
iptables -A INPUT -p tcp --dport 3690 -j ACCEPT
iptables -A INPUT -p tcp --dport 3691 -j ACCEPT

設置 svnserve 兩個倉庫程序在 linux 服務器重啟後開機啟動

vi /etc/rc.local
/usr/bin/svnserve -dr /var/svn/yzmedu
/usr/bin/svnserve -dr /var/svn/m --listen-port 3691

在 window 上用 TortoiseSVN 進行分別檢出即可

1)svn://121.199.5.128
2)svn://121.199.5.128:3691

出現問題

1) linux web 服務器下檢出的目錄下有.svn 目錄,不能刪除!
2) 網站目錄 yzmedu 和 m 一定要設置 daemon 有足夠的權限!
3) 不需要設置 svn 用戶 zw 對網站目錄的權限,因為 svn 的守護者為 root!

相關說明

SVN的svnserve對於每個倉庫,有一個獨立的配置文件和獨立的用戶、權限管理。
可以保持配置文件svnserve.conf的獨立,但是用戶、權限管理是用統一的一個文件來存儲,這樣方便以後的管理和維護。
另外要註意,即使svnserve服務已經運行,修改配置文件或者用戶、權限管理文件,保存後馬上生效,不需要重啟服務。

服務端 安裝配置 svn