linux下的svn部署,linuxsvn部署
安裝步驟如下:
1、yum install subversion
yum -y install httpd
yum install mod_dav_svn
2、輸入rpm -ql subversion查看安裝位置,如:
我們知道svn在bin目錄下產生了幾個二進位檔案。輸入 svn --help可以查看svn的使用方法,如。
3、建立svn版本庫目錄mkdir -p /var/svn/svnrepos
4、建立版本庫svnadmin create /var/svn/svnrepos執行了這個命令之後會在/var/svn/svnrepos目錄下產生如下這些檔案
5、進入conf目錄(該svn版本庫設定檔)authz檔案是許可權控制檔案passwd是帳號密碼檔案svnserve.conf SVN服務組態檔
6、設定帳號密碼vi passwd在[users]塊中添加使用者和密碼,格式:帳號=密碼,
如dan=dan
7、設定許可權vi authz在末尾添加如下代碼:[/]
*=dan=rw
意思是版本庫的根目錄dan對其有讀寫權限,w只有讀許可權。
8、修改svnserve.conf檔案vi svnserve.conf開啟下面的幾個注釋:anon-access = read #匿名使用者可讀auth-access = write #授權使用者可寫
anon-access = none
auth-access = write
password-db = passwd #使用哪個檔案作為帳號檔案authz-db = authz #使用哪個檔案作為許可權檔案#realm = /var/svn/svnrepos # 認證空間名,版本庫所在目錄
9、啟動svn版本庫svnserve -d -r /var/svn/svnrepos
測試伺服器 svn co svn://ip地址
10、在windows上測試建立一個測試檔案夾,在該檔案夾下右鍵選擇 SVN checkout如(要事先安裝TortoiseSVN):
填寫SVN的地址,如:
輸入密碼,如:
在linux上面checkout 到目錄 svn co svn://ip地址
最後記得修改連接埠:
vim /etc/sysconfig/iptables
service iptables restart 重啟防火牆
初充一:若想達到用戶端提交檔案,伺服器下某個目錄(假如目錄名為html)也同步自動更新,採用下面的方法
第一步:伺服器上檢出
svn co svn://localhost/could html
第二步:建立post-commit檔案
[root@i-531-29129-VM hooks]# pwd
/application/svndata/could/hooks
[root@i-531-29129-VM hooks]# vi post-commit
[root@i-531-29129-VM hooks]# cat post-commit
#!/bin/bash
WEB=/var/www/html/
export LANG=en_US.UTF-8
svn update $WEB --username svnserver --password 'svnserverpwd'
webDir=/var/www/web/svn_localapp=(center member operator shop queue)cd $webDirfor appName in ${app[@]};do cd $appName svn update cd $webDirdoneexit
視頻講的不錯,網上找的,大家可以去看看!點擊去看
linux:linux下原理跟windows是一樣的。只是建立的檔案名稱不一樣。在SVN 項目版本庫的儲存目錄下的hooks 目錄,建立立一個post-commit檔案: vi post-commit增加以下代碼: #!/bin/sh WEB=/home/data/o135 export LANG=en_US.UTF-8 svn update $WEB --username o135 --password 'o135123'儲存,退出。。給予此指令碼的許可權: chmod 777 post-commit測試一下,看指令碼是否有許可權問題 ./post-commit以後每次用戶端提交操作,就會自動運行該指令碼。