【win】SVN利用钩子实现代码同步到WEB目录
来源:互联网 发布:谷歌平板nexus10 知乎 编辑:程序博客网 时间:2024/06/05 18:27
思路:
找 到SVN Server中的仓库(Repositories)文件夹的位置,在相应的项目文件夹中找到hooks文件夹。在该文件夹中添加一个post- commit文件;当有commit动作发生时(提交到SVN Server时)就会执行这个post-commit文件,在该文件实现数据的复制。
实例:
环境:SVN Server与测试用的Web Server在同一台Windows系统服务器上,SVN Server使用的是VisualSVN,Web Server使用的是Apache。项目的名称为test,客户端使用TortoiseSVN。
首先在apache的www目录下创建一个文件夹,进行checkout,输入需要用户名和密码,将test项目取出到该文件夹中。
找到SVN Server的Repositories目录,在Repositories/test/hooks文件夹中创建post-commit.bat,在其中写入命令:
"C:\Program Files\VisualSVN Server\bin\svn.exe" update "D:\www\test" --quiet --username name --password pwd
(即执行svn update命令,请自行替换用户名和密码)
也可以这样写
@echo offSET REPOS=%1SET USER=%2SET SVN="E:/Program Files/VisualSVN Server/bin/svn.exe"SET DIR="E:/wamp2/www" (call %SVN% update %DIR% --username izaodao --password izaodao --non-interactive)
大功告成。
注:
1.web目录下一定要用TortoiseSVN checkout出Repositories的代码
2.
-username izaodao --password izaodao
izaodao替换为登录svn的用户名和密码
在使用中可能会遇到的错误排除 :
1.Error: svn: 解析“D:\www\test”出错,或svn: E020024: Error resolving case of 'D:\www\test"',则有可能是因为目标文件名之后多加了”\”
2.“D:\www\test"或Skipped 'd:\www\test',则可能是因为没有执行步骤提交更新处理文件 即上面提到的.bat文件,svn.exe不认识目标文件夹
3. Working copy 'D:\www\test' is too old,则可能需要使用sven.exe upgrade命令重新整理一下目标文件夹 或者重新安装一个较高客户端版本至少要2.6以上吧
4.还有一个注意问题——Visual SVN Server的权限,否则可能会出现下列错误:
post-commit hook failed (exit code 1) with output:
svn: E155004: Working copy 'D:\www\Test' locked
svn: E200031: sqlite: attempt to write a readonly database
svn: E200031: sqlite: attempt to write a readonly database
svn: run 'svn cleanup' to remove locks (type 'svn help cleanup' for details)
原因是Visual SVN Server服务的执行权限不够,不能对指定目录做读写操作。解决办法,修改Visual SVN Server
简单操作 win+R 运行 services.msc 找到visual svn server 服务 右键属性 登陆面板 设置桌面交互或者管理员权限再试
知识是我们已知的 也是我们未知的 基于已有的知识之上 我们去发现未知的 由此,知识得到扩充 我们获得的知识越多 未知的知识就会更多 因而,知识扩充永无止境
转自:http://www.cnblogs.com/xiezhengcai/archive/2013/11/27/3445457.html
- 【win】SVN利用钩子实现代码同步到WEB目录
- SVN利用钩子实现代码同步到web目录
- svn利用钩子实现代码同步到web目录
- svn利用钩子脚本功能实现代码同步到web目录
- svn利用钩子脚本功能实现代码同步到web目录
- SVN 设置钩子将代码同步到Web目录下面
- 利用svn钩子实现php代码同步
- svn钩子(hooks)自动部署代码到web目录
- Linux CentOS SVN 设置钩子hooks/post-commit来同步更新服务器web目录,实现代码自动部署
- SVN利用钩子中的post-commit同步版本库到网站目录
- SVN利用钩子中的post-commit同步版本库到网站目录
- svn同步到web目录
- SVN使用钩子实现代码同步
- windows下利用svn钩子同步部署目录的方法
- 实现svn更新自动同步到web目录
- centos安装svn并配置钩子同步到www目录
- centos安装svn并配置钩子同步到www目录
- 利用SVN的钩子同步更新代码的方法详解
- Servlet Cookie技术
- Java中String直接赋值和使用new的区别
- Ajax异步&同步请求
- Struts2框架(一)
- JAVA类加载器原理
- 【win】SVN利用钩子实现代码同步到WEB目录
- Spring5源码解析-Spring框架中的事件和监听器
- 将代码及依赖的静态库编译为新静态库
- JavaScript常用对象&属性&事件-图标
- Linux ping不通百度的解决方法
- 表单对象属性选择器
- ConfigReader(十)—— ReadGuideBornNpcTaskConfig
- 排序 8
- MySQL在以下几种情况会创建临时表