詳解CentOS的SVN服務器搭建與自動部署全過程
服務器搭建
安裝服務
yum install subversion
配置服務
mkdir -p /data/wwwsvn/myrepo #創(chuàng)建svn倉庫的目錄
這里可以自定義創(chuàng)建的目錄,注意不是網站的文件目錄。
svnadmin create /data/wwwsvn/myrepo #與上面的目錄相同。
這里要注意該目錄不能是空目錄。 成功以后會得到以下文件
# ls conf db format hooks locks README.txt
進入conf修改配置文件
vi passwd添加在末尾
[users] # harry = harryssecret # sally = sallyssecret youname = yourpassword #你的用戶和密碼
vi authz添加在末尾
... [/] yourname = rw
vi svnserve.conf關閉注釋以及修改變量
anon-access = read #匿名用戶可讀 auth-access = write #授權用戶可寫 password-db = passwd #使用哪個文件作為賬號文件 authz-db = authz #使用哪個文件作為權限文件 realm = /data/wwwsvn/myrepo # 認證空間名,版本庫所在目錄,和之前的一樣
開啟和關閉服務
svnserve -d -r /data/wwwroot/myrepo #開啟 killall svnserve #關閉 ps aux | grep svnserve #查看是否運行
打開端口
這一步很重要,如果你都配置完了卻發(fā)現連接不上,那一定是端口沒有打開,默認端口是3690.
iptables -I INPUT -i eth0 -p tcp --dport 3690 -j ACCEPT #開放端口 service iptables save #保存 iptables 規(guī)則(如不能保存請使用其他方法保存)
客戶端連接
Windows
使用TortoiseSVN,url填寫svn://你的服務器ip,賬號密碼填剛剛設置的。
Mac
使用CornerStone,url填寫svn://你的服務器ip,賬號密碼填剛剛設置的。
自動部署
每一次commit提交代碼之后都會執(zhí)行鉤子post-commit,根據這個原理可以修改post-commit,讓服務器上的web目錄在每次有人commit之后自動update。
cd /data/wwwsvn/myrepo/hooks #你的版本倉庫目錄 cp post-commit.tmpl post-commit vi post-commit
內容如下
export LANG=zh_CN.UTF-8 #必須要這行 echo "hello world" >> /tmp/svn.log #用來測試鉤子是否有執(zhí)行,調試使用,如果正常就不需要這行了 /usr/bin/svn update /data/wwwroot/yourWebDir --username autoweb --password autoweb --no-auth-cache #也可以用其他方法,總之要保證web目錄能正常update
鉤子文件里的其他都可以不要了,可以都把他們注釋掉。
能這么使用的前提是你的yourWebDir已經checkout過了
cd /data/wwwroot/yourWebDir svn checkout svn://你的服務器ip ... #根據提示完成checkout
至此全部搞定,每一次commit到服務器會自動更新網站內容了。
這也是上次服務器數據丟失之后第一次記錄了。
總結
以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作能帶來一定的幫助,如果有疑問大家可以留言交流。
相關文章
教你快速開啟Apache SkyWalking的自監(jiān)控
這篇文章主要介紹了如何開啟Apache SkyWalking的自監(jiān)控的相關資料,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2021-04-04
Linux系統(tǒng)中 /etc/fstab 文件的深入解讀
這篇文章主要給大家介紹了Linux系統(tǒng)中 /etc/fstab 文件的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2019-01-01

