这里只是一个记录,原文摘抄svn利用钩子实现代码同步到web目录

思路:

找 到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 off
SET REPOS=%1
SET USER=%2
SET 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 服务 右键属性 登陆面板 设置桌面交互或者管理员权限再试

原文摘抄svn利用钩子实现代码同步到web目录

注链接方式是https的会提示错误,证书错误。改为http方式解决。

初学svn对版本进行控制 用post- commit钩子实现代码同步到web目录的更多相关文章

  1. svn利用钩子实现代码同步到web目录

    思路:  找 到SVN Server中的仓库(Repositories)文件夹的位置,在相应的项目文件夹中找到hooks文件夹.在该文件夹中添加一个post- commit文件:当有commit动作发 ...

  2. windows svn利用钩子实现代码同步到web目录

    思路:  找 到SVN Server中的仓库(Repositories)文件夹的位置,在相应的项目文件夹中找到hooks文件夹.在该文件夹中添加一个post- commit文件:当有commit动作发 ...

  3. svn 设置钩子将代码同步到web目录下面

    首先:确定思路: 要在SVN服务中,找到仓库文件夹的位置,在相应的项目中找到hooks文件夹.在该文件中添加一个post-commit文件: 当有commit动作发生时(提交到SVN服务是就会执行这个 ...

  4. CentOS6.8 搭建SVN并用钩子自动实现同步到web目录

    一 安装 yum install subversion 二 检查是否安装成功 svn --version 三 创建仓库目录 mkdir –p /home/svnroot/test 四 创建项目 svn ...

  5. svn利用钩子脚本功能实现代码同步到web目录

    一.hook简单介绍 为了方便管理员控制提交的过程 ,Subversion提供了hook机制.当特定的 事件发生时,相应的 hook会被调用,hook其实就相当于特定事件的处理函数.每个hook会得到 ...

  6. Linux CentOS 搭建SVN并用钩子自动实现同步到Web目录

    linux安装配置SVN并设置钩子   安装说明 系统环境:CentOS-6.3安装方式:yum install (源码安装容易产生版本兼容的问题)安装软件:系统自动下载SVN软件 检查已安装版本 # ...

  7. centos搭建svn 服务器 并同步到web 目录(总结)

    配置搭建步骤: Linux平台的SVN服务器的配置及搭建 从本地提交代码到svn代码库. 将代码库中代码同步到web目录: 1.在web目录中checkout版本库 进入/home/www目录下  ( ...

  8. CentOS 创建SVN 服务器,并且自动同步到WEB 目录

    CentOS 创建SVN 服务器,并且自动同步到WEB 目录 标签: centossvnsubversion服务器 2013-12-06 10:09 5492人阅读 评论(0) 收藏 举报  分类: ...

  9. Centos7下搭建SVN服务,本地提交代码自动同步到WEB目录

    1.安装SVN服务[root@bogon ~]# yum -y install subversion 2.查看svnserve安装目录[root@bogon ~]# whereis svnserves ...

随机推荐

  1. asp.net后台注册js的四种方法

    1. 用Response.Write方法 代码如下: Response.Write("<script type='text/javascript'>alert("kel ...

  2. js带上框架和防止被iframe的代码

    1.永远都会带着框架<script language="JavaScript"><!--if (window == top)top.location.href = ...

  3. Android Volley框架的使用(4)

    5. 取消请求 可以通过请求的setTag()方法给请求设置TAG,需要取消这些请求时,用请求队列的cancelAll()方法取消带有特定TAG的请求. 为请求设置TAG: stringRequest ...

  4. 从零开始学Python第0周:Python基本介绍(部分内容来源于网络)

    Python入门介绍 一,Python的基本介绍 (1)概要 Python是一种解释型,面向对象,动态数据类型的高级程序设计语言.常被广泛用于处理系统管理任务和web编程.现如今Python已经成为了 ...

  5. Scalaz(43)- 总结 :FP就是实用的编程模式

    完成了对Free Monad这部分内容的学习了解后,心头豁然开朗,存在心里对FP的疑虑也一扫而光.之前也抱着跟大多数人一样的主观概念,认为FP只适合学术性探讨.缺乏实际应用.运行效率低,很难发展成现实 ...

  6. 算法实质【Matrix67】

    动态规划 :你追一个MM的时候,需要对该MM身边的各闺中密友都好,这样你追MM这个问题 就分解为对其MM朋友的问题,只有把这些问题都解决了,最终你才能追到MM. 因此,该问题适用于聪明的MM,懂得“看 ...

  7. C++之面向对象的三个基本特征

    三大特性是:封装,继承,多态 所谓封装 就是把客观事物封装成抽象的类,并且类可以把自己的数据和方法只让可信的类或者对象操作,对不可信的进行信息隐藏.封装是面向对象的特征之一,是对象和类概念的主要特性. ...

  8. [转]精通JS正则表达式

    原文路径:http://www.jb51.net/article/25313.htm 正则表达式可以: •测试字符串的某个模式.例如,可以对一个输入字符串进行测试,看在该字符串是否存在一个电话号码模式 ...

  9. swift学习笔记之-高级运算符

    //高级运算符 import UIKit /*高级运算符(Advanced Operators):位运算符.溢出运算符.优先级和结合性.运算符函数.自定义运算符 位运算符: 1.位运算符可以操作数据结 ...

  10. jQuery.clean()方法源码分析(一)

    在jQuery 1.7.1中调用jQuery.clean()方法的地方有三处,第一次就是在我之前的随笔分析jQuery.buildFramgment()方法里面的,其实还是构造函数的一部分,在处理诸如 ...