http://www.linuxidc.com/Linux/2016-01/127679.htm
https://blog.csdn.net/mrwu9902/article/details/78695511
https://blog.csdn.net/jesonjoke/article/details/77094867
https://blog.csdn.net/dl425134845/article/details/41978541
http://www.cnblogs.com/yangwenpeng/p/7264955.html
多倉庫配置
一:
如何安裝SVN,這里就不再重復描述了,可以參見我另一篇文章。鏈接如下
http://blog.csdn.net/dl425134845/article/details/41209763
重點描述一下如何配置多個版本庫
進入到svn的安裝目錄/usr/local/svn/bin下,
先創建一個存放版本庫的路徑
mkdir -p /usr/local/svndata/
創建版本庫1
./svnadmin create /usr/local/svndata/repos1
創建版本庫2
./svnadmin create /usr/local/svndata/repos2
切換路徑至/usr/local/svndata/repos1/conf
這里面有3個文件,分別為authz、passwd、svnserve.conf;
將authz和passwd這2個文件復制到/usr/local/svn目錄下;
刪除當前目錄(/usr/local/svndata/repos1/conf)下的authz、passwd;
修改當前目錄(/usr/local/svndata/repos1/conf)下的svnserve.conf;
重點是修改這4個參數
anon-access = none
auth-access = write
password-db = /usr/local/svn/passwd //這也是為什么上面講passwd復制到/usr/local/svn路徑下的原因
realm = XXXXX //這是svn連接時的提示信息
切換路徑至/usr/local/svndata/repos1/hooks
復制post-commit.tmpl文件並且命名為post-commit, 命令如下: cp post-commit.tmpl post-commit
修改post-commit文件的屬性,增加可執行權限, 命令如下:chmod -R +x post-commit
修改post-commit文件,,在末尾添加如下內容,把末尾幾行沒有注釋掉的注釋掉,修改內容如下:
WEB= /home/wwwroot/website1/ //這里指向的是你web發布存放代碼的路徑
export LANG=en_US.UTF-8
/usr/local/svn/bin/svn update $WEB --username 用戶名 --password '密碼'
至此版本庫1修改完畢,同樣修改版本庫2,
關閉SVN,方法如下:
查看svn進程是否已經啟動,ps -ef|grep svn 然后輸入 kill 進程號 殺死該進程
啟動SVN
切換到/usr/local/svn/bin目錄下
輸入命令:./svnserve -d -r /usr/local/svndata //注意,這里只輸入到版本庫的父母錄即可,這樣會加載里面所有的版本庫
服務器上檢出
./svn co svn://本機ip地址/repos1 /home/wwwroot/website1
./svn co svn://本機ip地址/repos2 /home/wwwroot/website2
結合 二;
引言 --- 上次我們介紹了 linux 上面安裝 SVN 這次我們介紹 使用
post-commit
鈎子,完成服務器自動更新
什么是 post-commit
利用SVN的POST-COMMIT鈎子自動部署代碼 我們在開發的過程將代碼提交到SVN后使用SVN的hook,通過post-commit腳本,在目 標文件夾根下執行svn update操作,將更新內容同步到測試環境,這樣開發調試非常方便。
如何做
- 當我們安裝建立好遠端倉庫后目錄結構如下
進入 hooks 目錄
shell cd hooks
我們可以看到有個 post-commit.tmpl
的文件。 這是官方提供的一個 template 。我們直接 copy 這個文件
shell cp -f post-commit.tmpl post-commit
注意: copy 后的文件沒有后綴名稱
- 編輯 post-commit 文件
shell vi post-commit
刪掉除了第一行 #!/bin/sh
之后的所有文件 然后輸入
```shell
#!/bin/sh
/usr/bin/svn update --username wenpeng --password wp113000 /home/wechat_service
# svn 命令路徑 + update --username 您的用戶名 --password 您的密碼 您的服務器代碼項目目錄
```
- 即將完成 --- 最后一步 -- 修改權限
shell chmod +x post-commit
- Checkout一份代碼到您的服務器代碼項目目錄
shell /usr/bin/svn checkout svn://127.0.0.1/wechat /home/wechat_service
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
單倉庫配置;
一;
http://www.linuxidc.com/Linux/2016-01/127679.htm
安裝步驟如下:
1、yum install subversion
2、輸入rpm -ql subversion查看安裝位置,如下圖:
可以看到 svn在bin目錄下生成了幾個二進制文件。
再輸入/usr/bin/svnversion --version 就可以查看svn的版本,這樣就說明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
w=r
意思是版本庫的根目錄dan對其有讀寫權限,w只有讀權限。
8、修改svnserve.conf文件
vi svnserve.conf
打開下面的幾個注釋:
anon-access = read #匿名用戶可讀
auth-access = write #授權用戶可寫
password-db = passwd #使用哪個文件作為賬號文件
authz-db = authz #使用哪個文件作為權限文件
realm = /var/svn/svnrepos # 認證空間名,版本庫所在目錄
9、啟動svn版本庫
svnserve -d -r /var/svn/svnrepos
10、在Windows上測試
二
1.安裝svn
- yum -y install subversion
2.建立版本庫目錄並配置
- mkdir -p /var/www/svndata
- svnserve -d -r /var/www/svndata
3.建立版本庫:創建一個新的Subversion項目
- svnadmin create /var/www/svndata/project
4.配置允許用戶kinder訪問
- cd /var/www/svndata/project/conf
- vi svnserve.conf
- [general]
- anon-access=none
- auth-access=write
- password-db=passwd
- vi passwd
- [users]
- kinder=123456
5.客戶端連接
(如果svn未開啟,進行開啟操作)
- svnserve -d -r /var/www/svndata
- svn co svn://127.0.0.1/project