2017年11月16日 17:07:54 crossangles_2017 閱讀數:2543mysql
使用yum安裝很是簡單:linux
yum install subversion
咱們這裏在/opt
下創建一個名爲svn
的倉庫(repository),之後全部代碼都放在這個下面,建立成功後在svn下面多了幾個文件夾。sql
[root@localhost /]# cd /opt
數據庫
[root@localhost opt]# mkdir svn
vim
[root@localhost opt]# svnadmin create /opt/svn
windows
[root@localhost opt]# ls svn
ide
conf db format hooks locks README.txt
svn
咱們這裏特別關注一下conf
文件夾,這個是存放配置文件的函數
[root@localhost opt]# cd svn/conf
post
[root@localhost conf]# ls
authz passwd svnserve.conf
其中:
接下來咱們依次修改這3個文件。
[root@localhost conf]# vi passwd
[users]
test1=123456
test2=123456
上面的例子中咱們建立了2個用戶,一個test1,一個test2
[root@localhost conf]# vi authz
[/]
liuxianan=rw
test1=r
test2=r
*=
上面配置的含義是,liuxianan
對/opt/svn/
下全部文件具備可讀可寫權限,test
只有只讀權限,除此以外,其它用戶均無任何權限,最後一行*=
很重要不能少。
[root@localhost conf]# vi svnserve.conf
打開下面的5個註釋
anon-access = none#匿名用戶可讀
auth-access = write #受權用戶可寫
password-db = passwd #使用哪一個文件做爲帳號文件
authz-db = authz #使用哪一個文件做爲權限文件
realm = /opt/svn # 認證空間名,版本庫所在目錄
2點注意:
[root@localhost conf]# svnserve -d -r /opt/svn(啓動)
[root@localhost conf]#killall svnserve(中止)
上述啓動命令中,-d
表示守護進程, -r
表示在後臺執行。中止還能夠採用殺死進程的方式:
[root@localhost conf]# ps -ef|grep svnserve
root 4908 1 0 21:32 ? 00:00:00 svnserve -d -r /home/svn
root 4949 4822 0 22:05 pts/0 00:00:00 grep svnserve
[root@localhost conf]# kill -9 4908
這裏使用TortoiseSVN,輸入地址svn://你的IP
便可,不出意外輸入用戶名和密碼就能鏈接成功了。
默認端口3690,若是你修改了端口,那麼要記得加上端口號。
cd /opt/svn/hooks
mv post-commit.tml post-commit
而後:vim post-commit
#!/bin/sh
#
#
#
REPOS="$1"
REV="$2"
export LANG=zh_CN.UTF-8
SVN=/usr/bin/svn #這裏配置的是svn安裝bin目錄下的svn文件
WEB=/opt/lampp/htdocs/ #要更新的目錄
$SVN update $WEB --username xxx --password xxx (此版本是linux下,windows下是.bat,寫法少有不一樣)
而後記得讓post-commit有執行的權限: chmod 777 post-commit
總的來講,若是你不須要雜七雜八的權限配置只是本身一我的用的話,安裝配置仍是比較簡單的,並不像網上說的那麼麻煩,我按照網上的方法一次性成功了。
以svn爲例:
# rpm -qa | grep subversion
subversion-1.6.11-15.el6_7.x86_64
# rpm -ql subversion-1.6.11-15.el6_7.x86_64
...
/usr/share/doc/subversion-1.6.11
/usr/share/doc/subversion-1.6.11/BUGS
/usr/share/doc/subversion-1.6.11/CHANGES
...
說明:
rpm幾個默認安裝路徑:
/etc 一些設置文件放置的目錄
/usr/bin 一些可執行文件
/usr/lib64 一些程序使用的動態函數庫
/usr/share/doc 一些基本的軟件使用手冊與幫助文檔
/usr/share/man 一些man page文件
本人出現的問題擴充:當linux中執行svn up 失敗時,執行:
svn co svn://你的ip地址/ /opt/www/ --username 用戶名 --password 密碼
說明:svn://你的ip地址/ 是svn url
/opt/www/ :目錄也就是你要更東西的目錄以後的
--username username 就是你的svn用戶名 --password password就是svn密碼
擴展:數據庫添加權限
進入
cd /opt/lampp/bin
./mysql -uroot -p
默認密碼爲空
grant all privileges on *.* to 'root'@'%' identified by '123456' with grant option;
flush privileges;