`
阅读更多

昨天,我想在SVN上修改一个文件的注释,但提交时提示:

DAV request failed; it's possible that the repository's pre-revprop-change hook 

either failed or is non-existent At least one property change failed; repository is uncahnaged 

Error setting property "log":

Repository has not been enabled to accept revision propchanges;

ask the administrator to create a pre-revprop-change hook

 google了一下,有两种解决办法。

 

第一种是直接在svn服务器上的工程库目录下 hooks 目录下新建一个空的 pre-revprop-change.bat即可,这样就好象没有对修改权限进行限制,如果是个人使用的服务器,可以这样处理,如果是项目组中使用,则建议采用下面的方法。

 

第二种方法跟第一种一样,新建一个pre-revprop-change.bat文件,然后把下面的内容粘贴到该文件中:

@ECHO OFF    
:: Set all parameters. Even though most are not used, in case you want to add    
:: changes that allow, for example, editing of the author or addition of log messages.    
set repository=%1    
set revision=%2    
set userName=%3    
set propertyName=%4    
set action=%5    
    
:: Only allow the log message to be changed, but not author, etc.    
if /I not "%propertyName%" == "svn:log" goto ERROR_PROPNAME    
    
:: Only allow modification of a log message, not addition or deletion.    
if /I not "%action%" == "M" goto ERROR_ACTION    
    
:: Make sure that the new svn:log message is not empty.    
set bIsEmpty=true    
for /f "tokens=*" %%g in ('find /V ""') do (    
set bIsEmpty=false    
)    
if "%bIsEmpty%" == "true" goto ERROR_EMPTY    
    
goto :eof    
    
:ERROR_EMPTY    
echo Empty svn:log messages are not allowed. >&2    
goto ERROR_EXIT    
    
:ERROR_PROPNAME    
echo Only changes to svn:log messages are allowed. >&2    
goto ERROR_EXIT    
    
:ERROR_ACTION    
echo Only modifications to svn:log revision properties are allowed. >&2    
goto ERROR_EXIT    
    
:ERROR_EXIT    
exit /b 1   

 

至于在Linux/Unix上,则可以复制  hooks 目录下的 pre-revprop-change.tmpl 为 pre-revprop-change.sh,然后根据实现需要做相应修改即可。

分享到:
评论

相关推荐

    Windows 下 SVN 修改 信息 hook

    如果未正确配置此钩子,用户可能会收到错误提示:“此版本库不允许修改版本属性”。这是出于安全考虑,防止不适当的修改导致历史记录混乱。 在本案例中,提供的`pre-revprop-change.exe`文件是一个预设的钩子脚本,...

    TortoiseSVN(解决服务端较低时,高版本客户端无法查看日志问题)

    TortoiseSVN是一款在Windows操作系统上广泛使用的Subversion(SVN)客户端工具,它以图形用户界面的形式提供版本控制系统的服务。在某些情况下,当用户的TortoiseSVN客户端版本较高,而服务器上的Subversion服务端...

    svn服务器,svnServer

    Subversion是开源的软件版本控制系统,它允许开发者在多个用户之间共享和同步代码,同时跟踪每一次修改,便于历史回溯、协作和版本控制。 【描述】"svn服务器,svnServer,32位管网下载的"说明了这是一个32位版本的...

    svn服务器端安装程序及安装说明

    它允许团队成员协同工作,记录每次更改,以便于回滚到以前的版本,解决冲突,并保持代码库的一致性。在Windows环境下,我们可以使用SVN服务器程序来搭建一个本地或远程的代码仓库。 本压缩包提供的内容包括了SVN...

    svn服务器端+客户端+eclipse插件

    Subversive 和 Subclipse 是两种常见的Eclipse SVN 集成插件,它们将SVN的功能无缝地整合到Eclipse IDE中,允许开发者在不离开IDE的情况下进行版本控制操作。Subversive 提供了与Eclipse平台更紧密的集成,而...

    svn强制写日志hooks

    本文将深入探讨“svn强制写日志hooks”这一主题,它与Subversion的钩子脚本(hooks)密切相关,这些脚本允许在执行特定操作时执行自定义的服务器端逻辑,例如提交日志消息。 首先,了解“hooks”在svn中的作用至关...

    svn限制强制写日志及只能修改自己日志脚本

    在Windows环境下,为了实现SVN客户端的修改日志功能,并确保用户只能修改自己的日志记录,可以通过自定义预处理脚本来实现这一目标。以下是具体步骤: - **步骤一:** 在SVN仓库的`hooks`目录下,找到`pre-revprop-...

    SVN服务器和客户端安装包

    虽然在SVN服务器和客户端的上下文中,JSON不直接参与版本控制,但JSON在现代Web应用和API接口中广泛用于数据传输,可能在与SVN交互的某些自动化脚本或服务中用到。 使用SVN可以带来以下优势: 1. 版本控制:记录每...

    svn服务器配置

    在配置SVN之前,首先需要在服务器上安装SVN服务端软件。常见的选择有Apache HTTP Server(通过mod_dav_svn模块提供SVN支持)和VisualSVN Server,它们分别适用于Linux和Windows操作系统。 1. 对于Linux系统: - ...

    windows下自建svn

    在Windows操作系统中自建SVN(Subversion)服务器是一项实用的技能,对于团队协作和代码管理至关重要。Subversion是一款开源的版本控制系统,它允许用户跟踪和控制文件和目录的变更,便于多人协作开发。以下是对如何...

    svn 客户端 服务器 打包下载

    开发人员可以将本地工作副本与服务器上的最新版本同步,提交自己的更改,同时查看和解决冲突。此外,TortoiseSVN还提供了强大的日志查看功能,可以追溯文件的历史版本和变更详情。 对于团队协作,SVN提供了一种有效...

    SVN服务器端.rar

    1. **安装与配置**:在各种操作系统上(如Windows、Linux、macOS)安装SVN服务器,通常涉及安装服务器软件,如VisualSVN Server(Windows)、Apache Subversion(跨平台)或CollabNet Subversion Edge(提供Web界面...

    svn windows版本 1.8.4

    "svn windows版本 1.8.4"是Subversion在Windows上发布的1.8.4版本,它包含了对Windows系统优化的支持和一些特有的功能。 Subversion 1.8.4 版本的主要特点和改进包括: 1. **性能提升**:这个版本针对Windows平台...

    SVN(windows平台)自动备份脚本

    在Windows平台上,我们可以利用SVN的命令行工具以及系统自带的任务计划程序,实现SVN仓库的自动备份。下面将详细介绍如何配置和使用SVN自动备份脚本。 1. **SVN基础** SVN的核心功能是追踪文件和目录的更改,它...

    SVN服务器和客户端详细使用指南

    1. **选择服务器平台**:SVN服务器可以运行在多种操作系统上,如Windows、Linux或macOS。Apache HTTP Server上的SVN(也称为mod_dav_svn)和VisualSVN Server是常见的选择。 2. **安装服务器软件**:根据所选平台,...

    SVN服务器搭建和使用

    - **更新(Update)**:获取SVN服务器上的最新版本到本地。 - **合并(Merge)**:合并另一个分支或版本中的更改到当前工作区。 - **解决冲突**:当两个开发者对同一文件进行了不同的修改时,需要手动解决冲突。 - *...

    Windows下Svn的安装使用

    5. **添加(Add)**:新创建的文件或文件夹默认不在Svn的控制下,需右键选择“ Add ”将其纳入版本控制。 6. **忽略(Ignore)**:有时你可能希望Svn忽略某些文件或文件夹,比如日志文件或临时文件,通过“ TortoiseSVN...

    SVN服务器安装包

    日志可以帮助追踪谁做了什么修改,冲突解决机制帮助团队处理多人同时修改同一文件的情况,而版本回滚则允许我们撤销不希望的更改。 总的来说,SVN服务器的安装和配置是团队协作开发的重要环节,它提供了高效、可靠...

    svn 在xp系统上安装服务器端和客户端.rar_HLD_SVN客户端 xp_SVN服务器_svn xp_svn xp 客户端

    本教程将详细介绍如何在Windows XP系统上安装和配置SVN服务器端以及客户端。 一、安装SVN服务器端 1. 下载安装VisualSVN Server:首先,你需要访问VisualSVN官网下载VisualSVN Server的安装包,这是在Windows平台...

    SVN搭建安装包

    4. **使用说明资料**:这部分内容可能包括官方文档、教程、快速入门指南等,帮助用户了解如何创建和配置SVN仓库,如何克隆、添加、提交、更新代码,以及解决可能出现的问题。这些资料对初学者尤其有价值,能加速他们...

Global site tag (gtag.js) - Google Analytics