Centos的svn钩子自动更新部分终于完成了!
2013-06-14 10:56
459 查看
系统:
Centos6.4 , Apache/2.2.15 and Subversion version 1.6.11
Windows7 and TortoiseSVN 1.7.13
前提条件
/article/1772154.html接着上次的svn配置继续完成,
(1)Checkout
1 . # mkdir /var/www/html/helpdesk
2. # cd /var/www/html
3. # chown -R apache:apache helpdesk
4.必须使用apache的所属用户和组来执行checkout,
首先,我得明确apache用户和组是哪个用户. 信息都在httpd.conf文件里 .在 CentOS这个系统,账户名字就是apache
第二部,su apache.
这一步可能会有问题“This account is currently not available”,没有的跳过
这个解决方法是
①查看apache账户的信息#cat /etc/passwd | grep apache。 发现属性的结尾部分是这样的 “/sbin /nologin”
②把这部分编辑成“/bin/bash”.命令 #vi /etc/passwd 。保存退出
第三部,重启apache。 #service httpd restart.
5.切换apache用户 #su apache
6.进行checkout操作。 bash-4.1$ svn checkout http://yourIP/svn/helpdesk/trunk/ /var/www/html/helpdesk/
7.提示你输入apache密码,空 .直接Enter
8.输入前面配置好的username and password
9. 输入两次 "yes"
OK.checkout结束
(2) 测试一下你的checkout的内容能不能更新
bash-4.1$ svn update /var/www/html/test/trunk --username name --password pass,Enter
如果出现 At revision 12.这种svn的版本号,可以正常更新
(3).post-commit
1.回到root用户
2.#cp post-commit.tmpl post-commit
3.编辑post-commit file
#!/bin/sh
REPOS="$1"
REV="$2"
SVN=/usr/bin/svn
WEB=/var/www/html/helpdesk
LOG_PATH=/tmp/svn_update.log
echo "\n\n\n##########COMMIT " `date "+%Y-%m-%d %H:%M:%S"` '##################' >> $LOG_PATH
echo `whoami`,$REPOS,$REV >> $LOG_PATH
"$SVN" update --username name --password pass "$WEB" --no-auth-cache >> "$LOG_PATH"
chown -R apache:apache "$WEB"
保存并退出
4.#chown apache:apache post-commit
5.给post-commit权限 #chmod 777 post-commit
6.#service httpd restart
(4)windows7
安装 TortoiseSVN 1.7.13 并且 checkout http://yourIP/svn/helpdesk/trunk/
其实我在第一篇文章结束测试时就已经配置好了Windows的这部分。
Windows部分更新图,Hello.txt的内容是:
Hello World!!!
I feel good!
Windows的chrome浏览器查看
再看服务器
再看log文件
文件内容一致,完成了更新
Over.
Centos6.4 , Apache/2.2.15 and Subversion version 1.6.11
Windows7 and TortoiseSVN 1.7.13
前提条件
/article/1772154.html接着上次的svn配置继续完成,
(1)Checkout
1 . # mkdir /var/www/html/helpdesk
2. # cd /var/www/html
3. # chown -R apache:apache helpdesk
4.必须使用apache的所属用户和组来执行checkout,
首先,我得明确apache用户和组是哪个用户. 信息都在httpd.conf文件里 .在 CentOS这个系统,账户名字就是apache
第二部,su apache.
这一步可能会有问题“This account is currently not available”,没有的跳过
这个解决方法是
①查看apache账户的信息#cat /etc/passwd | grep apache。 发现属性的结尾部分是这样的 “/sbin /nologin”
②把这部分编辑成“/bin/bash”.命令 #vi /etc/passwd 。保存退出
第三部,重启apache。 #service httpd restart.
5.切换apache用户 #su apache
6.进行checkout操作。 bash-4.1$ svn checkout http://yourIP/svn/helpdesk/trunk/ /var/www/html/helpdesk/
7.提示你输入apache密码,空 .直接Enter
8.输入前面配置好的username and password
9. 输入两次 "yes"
OK.checkout结束
(2) 测试一下你的checkout的内容能不能更新
bash-4.1$ svn update /var/www/html/test/trunk --username name --password pass,Enter
如果出现 At revision 12.这种svn的版本号,可以正常更新
(3).post-commit
1.回到root用户
2.#cp post-commit.tmpl post-commit
3.编辑post-commit file
#!/bin/sh
REPOS="$1"
REV="$2"
SVN=/usr/bin/svn
WEB=/var/www/html/helpdesk
LOG_PATH=/tmp/svn_update.log
echo "\n\n\n##########COMMIT " `date "+%Y-%m-%d %H:%M:%S"` '##################' >> $LOG_PATH
echo `whoami`,$REPOS,$REV >> $LOG_PATH
"$SVN" update --username name --password pass "$WEB" --no-auth-cache >> "$LOG_PATH"
chown -R apache:apache "$WEB"
保存并退出
4.#chown apache:apache post-commit
5.给post-commit权限 #chmod 777 post-commit
6.#service httpd restart
(4)windows7
安装 TortoiseSVN 1.7.13 并且 checkout http://yourIP/svn/helpdesk/trunk/
其实我在第一篇文章结束测试时就已经配置好了Windows的这部分。
Windows部分更新图,Hello.txt的内容是:
Hello World!!!
I feel good!
Windows的chrome浏览器查看
再看服务器
再看log文件
文件内容一致,完成了更新
Over.
相关文章推荐
- linux-centos搭建svn版本钩子自动更新版本库
- Linux配置svn,测试了,好用,但是还没有钩子自动更新的那部分,有点遗憾
- Linux CentOS SVN 设置钩子hooks/post-commit来同步更新服务器web目录,实现代码自动部署
- centos7安装及搭建svn及钩子(自动更新)
- centos下svn的主要常用命令(解决商城系统添加的文件无法自动更新至svn服务器)
- linux centos svn 安装配置自动同步更新web服务
- linux centos svn 安装配置自动同步更新web服务
- linux 设置svn钩子实现自动更新
- Centos 6让SVN提交文件自动更新到nginx的WEB目录
- 解决svn本身上传没有权限和配置自动更新的钩子
- 利用SVN的POST-COMMIT钩子自动更新
- Linux(CentOS)+SVN服务器,并实现本地提交后,服务器端自动更新
- Centos6.5 搭建 SVN 服务器 及 钩子同步更新网站代码
- svn配置钩子自动更新web目录
- svn利用钩子post-commit自动更新到线上测试服务器
- Linux上yum安装svn并使用钩子实现自动更新
- centos6.5下svn的搭建配置,以及自动更新代码
- 在CentOS 7.0中配置svn自动更新出现的问题
- CentOS 设置 svn 提交后自动自动更新到 web 目录
- Centos 6让SVN提交文件自动更新到nginx的WEB目录