-
用svnsync备份,出现post-commit错误5
环境说明:两台windows2003服务器,基于apache的svn配置,想实现两台机器间的版本库实时同步。
我是按照网上盛盛流传的帖子里的如下方法配置的:
3, 版本库同步
Subversion 1.4增加了同步机制,可以实现一个版本库同另一个版本库的同步(但好像只是单向的),我们可以用来实现版本库的备份或镜像。
3.1. 对目标库初始化
svnsync init svn://localhost/project2 svn://localhost/project1
其中project2是目标的版本库,而project1是源版本库。其中的目标版本库必须为空,而且必须允许修订版本属性的修改,也就是在目标的版本库的hooks目录里添加一个文件pre-revprop-change.bat,内容为空即可。
3.2. 同步project2到project1
svnsync sync svn://localhost/project2
这时候你update一下你的project2的一个工作拷贝,就会发现有了project1的所有内容。如果project1又有提交,这时候 project2的版本库无法看到最新的变化,还需要再运行一遍sync操作,这样才能将最新的变化同步。需要注意的是,目标版本库只能做成只读的,如果目标版本库发生了变更,则无法继续同步了。
3.3. 同步历史属性的修改
因为同步不会更新对历史属性的修改,所以svnsync还有子命令copy-revprops,可以同步某个版本的属性。
3.4. 钩子自动同步
希望在每次提交时同步,则需要在源版本库增加post-commit脚本,内容如下:
echo offset SVN_HOME="D:\Subversion"%SVN_HOME%\bin\svnsync sync --non-interactive svn://localhost/project2
把以上内容存放为post-commit.bat,然后放到版本库project1下的hooks目录下,这样project1每次提交,都会引起project2的同步。
前两步都成功了,直到3.3开始:
问题:1、3.3没找到命令
2、3.4,我提交源版本库能成功,同时报修改目标版本库报错,为啥呢?
错误:‘post-commit’hook failed with error output;
错误:"'C:\Program Files\Subversion'"不是内部或外部命令,也不是可运行的程序
错误:或批处理文件2009年11月05日 14:37
目前还没有答案
相关推荐
`pre-commit.exe` 可能是一个可执行文件,它可能是用其他编程语言(如Python或C#)编写的,提供了更复杂的功能或逻辑。与批处理文件类似,这个可执行文件会在提交前运行,执行项目特定的检查。 使用预提交钩子的...
(1)在网上看了很多方案,类似于 在 hooks文件的 post-commit 文件中增加 || exit1 exit0;这种方案试过之后并没有解决问题; (2)最终解决方案,找到post-commit 文件的第52行,并把相应内容注释掉,问题得到了...
### SVN Hook预提交(pre-commit)控制机制:禁止删除文件与强制添加注释 #### 一、SVN(Subversion)简介 SVN 是一个集中式的版本控制系统,它可以帮助团队管理和跟踪项目的开发过程。通过SVN,开发人员可以保存...
用法:将本bat文件(不可改名)存在svn服务器端安装目录\仓库名\hooks下(该目录下有多个*.tmpl文件,包括pre-commit.tmpl即linux下的提交钩子,而pre-commit.bat为windows下的提交钩子),并修改文件中相应目录(共...
### SVN服务用svnsync命令实现双机热备 #### 概述 在软件开发过程中,版本控制系统(Version Control System, VCS)是必不可少的工具之一。Subversion(SVN)作为一款广受欢迎的集中式版本控制系统,在企业级项目...
标题“post-commit.rar”指的是一个与版本控制系统Subversion(简称SVN)相关的压缩包文件,其中包含用于自动化操作的脚本和配置。这个压缩包很可能是一个示例或模板,用于在执行提交操作后触发特定的行动,比如发送...
本文将详细介绍如何在 Linux 系统下使用 SVN 自带的 `svnsync` 工具进行异地同步增量备份。 #### 二、准备工作 在开始备份之前,我们需要准备以下几项工作: 1. **环境准备**:确保源服务器和备份服务器都已安装 ...
### SVN钩子脚本pre-commit实现删除权限控制 #### 一、引言 Subversion(SVN)是一款广泛使用的版本控制系统,在许多企业及个人开发者中备受青睐。SVN提供了强大的版本管理和协同工作能力,帮助团队高效地管理源...
这些操作称为 Hook SCRIPT,其中包括 pre-commit、post-commit、pre-update、post-update 等多种类型的 Hook,每种 Hook 都有其特定的用途和执行时机。 在 Subversion 中,pre-commit Hook 是在客户端提交事务之前...
SVN提交时必须写说明,说明少于10个字符则提交失败 把改文件放在SVN的hooks目录下,并修改一些文件里的路径即可
svn TortoiseSVN 1.14.5 (64-bit) svn客户端svn TortoiseSVN 1.14.5 (64-bit) svn客户端svn TortoiseSVN 1.14.5 (64-bit) svn客户端svn TortoiseSVN 1.14.5 (64-bit) svn客户端svn TortoiseSVN 1.14.5 (64-bit) svn...
当出现“Failed to get lock on destination repos”错误时,可以使用命令`svnp del --revprop -r 0 svn:svn-lock file:///svnroot/testcases`删除锁定信息,解决该问题。 ### 7. 文件权限管理 最后,为了确保后续...
通过`svnsync init`命令设置源仓库和目标仓库的同步关系,然后使用`svnsync sync`来执行同步操作。`svnsync`支持单向同步,即从源仓库到目标仓库,且具有幂等性,即使在同步过程中发生中断,也能在下次同步时继续从...
windows环境svn服务器,提交限制文件大小脚本,pre-commit.bat,限制大小为byte
### SVN定时同步备份知识点 #### 一、SVN同步备份概念 Subversion(简称SVN)是一种开源的版本控制系统,广泛应用于软件开发过程中对代码进行版本控制与管理。SVN同步备份是指通过一定的机制实现主版本库(源库)与...
### SVNsync配置库同步知识点详解 ...以上是关于如何使用SVNsync进行SVN仓库之间的同步操作的详细介绍。通过遵循这些步骤,您可以高效地实现数据的同步迁移,从而提高工作效率并确保数据的安全性。
maven git commit id plugin git-commit-id-plugin is a plugin quite similar to ...I had to quickly develop an git version of such a plugin. For those who don't know the previous plugins, it basically ...
1. 创建post-commit.bat文件:在hooks目录下创建一个名为post-commit.bat的文件,用于触发每次提交代码后的同步操作。 2. 赋予Visual Server执行bat文件的权限:需要赋予Visual Server执行bat文件的权限,以便每次...
`commit-email.pl` 是一个Perl脚本,通常作为SVN服务器的post-commit钩子,当用户提交代码到SVN仓库后,该脚本会被触发,然后自动发送一封包含提交详情的邮件给指定的收件人。这不仅提高了团队协作效率,也确保了...
利用svnsync同步SVN版本库,将之前主库上的SVN数据迁移到VisualSVN上,然后在实现版本库的远程自动备份,版本库备份到另一台机器上。