Linux-CentOs7-svn安裝

1、現在比較火的好像是git,我沒用過git,之前公司用的svn,感覺還行,時間長了就順手了,這裡做個svn的教程

首先進入test目錄下,新建一個svn目錄,準備做svn測試

cd /test

mkdir svn

cd svn

然後使用yum安裝svn,這裡就不使用編譯安裝了,這玩意只要能用就行,版本無所謂

rpm -qa subversion 查看是否已安裝svn

yum install subversion 安裝svn

2、安裝完成後,創建svn版本庫,就在我們新建的svn下面

svnadmin create /test/svn

創建好了使用 ll 命令查看文件

然後進入conf目錄,進行文件配置

cd conf

首先配置賬號密碼文件

vi passwd

user=111111 前面的是用戶名,後面的是密碼

然後配置許可權

vi authz

在文件里輸入下圖中的內容

然後在編輯配置文件,在下圖中的位置加入下列內容,他原來的文件是有下面內容的,都是注釋的,你也可以去掉注釋直接改內容

anon-access = none 不允許匿名用戶

auth-access = write 授權用戶可寫

password-db = passwd 用戶文件是哪個

authz-db = authz 鑒權文件是哪個

realm = /test/svn 你設置的項目目錄

3、配置鉤子文件,用於將上傳的文件更新到網站目錄

cd /test/svn/hooks

cp post-commit.tmpl post-commit

vi post-commit

將下列代碼插入到文件中

export LANG=en_US.UTF-8

SVN_PATH=/usr/bin

WEB_PATH=/usr/local/nginx/html 這裡是設置的網站目錄,我們以之前安裝的nginx下的默認根目錄

SVN_USER=user 設置的svn用戶名

SVN_PASS=111111 密碼

LOG_PATH=/tmp/svn.log

echo `date "+%Y-%m-%d %H:%M:%S"` >> $LOG_PATH

echo `whoami`,$REPOS,$REV >> $LOG_PATH

$SVN_PATH/svn update $WEB_PATH --username $SVN_USER --password $SVN_PASS --no-auth-cache >> $LOG_PATH

記得將最後一行mailer…… 注釋掉,刪掉也行,沒鳥用

保存完畢後,給文件加上可執行許可權

chmod a+x post-commit

4、開啟svn的3690埠

5、開啟svn服務

svnserve -d -r /test/svn

6、然後我們進入網站目錄,先用賬號檢出下,按圖示操作

cd /usr/local/nginx/html

svn checkout svn://192.168.0.253

先輸入root密碼, 在輸入svn賬戶 , 在輸入svn密碼, yes 保存密碼

7、ok,linux系統上配置好了,我們來本地試驗下。

本地安裝svn就不多介紹了,自己去官網下載即可,然後按圖示操作

提交成功後,我們在看看linux下的目錄,他會自動將文件更新到網站目錄下。

8、備註

我這裡操作的目錄是 /test/svn 目錄,但是一個伺服器上可能不止一個網站,就要建立多個倉庫,可以在test目錄下簡歷 svn0、svn1 ……等多個目錄。然後啟動的時候用

svnserve -d -r /test 即可,這裡要啟動test下的多個倉庫。

檢出的時候ip後面要加目錄名 svn://ip/svn0 等

bingou
推薦閱讀:

請問VisualSVN新建版本庫:FSFS和VDFS存儲方式的區別?
Word Office 2016 for mac啟動就崩潰?
SVN repository found,關於AWVS掃描出的SVN漏洞?
一個項目在Linux和Windows上同時開發,如何進行版本控制?
xcode中的project.pbxproj衝突怎麼解決

TAG:SVNSubversion | CentOS |