一.问题现象:
SVN版本库安装在Mac下的/usr/local/svn/rep下,从Windows系统中使用TortoiseSVN修改日志时提示“Repository has not been enabled to accept revision propchanges;ask the administrator to create a prop-revprop-change hook”。
二.解决步骤:
1.打开Mac的Terminal终端
2.$ sudo su,然后输入root用户的密码。
3.sh-3.2# cd /usr/local/svn/rep/hooks
4.sh-3.2# cp pre-revprop-change.tmpl pre-revprop-change。从钩子模板拷贝生成一个钩子文件。按TortoiseSVN的错误提示,到这步后,应该可以正常提交,可尝试再次修改日志并提交,却出现“Revprop change blocked by prop-revprop-change hook (exit code 255) with no output”的提示,在经过 chmod a+x pre-revprop-change等执行权限的设置及文件权限的分配反复试验后,始终是错误提示,把我这Mac下的UNIX新手折腾够呛。经过大量资料的查阅,最终发现原来是此脚本文件文件格式不对。于是通过下面的步骤终于解决此问题。汗.....
5.检测pre-revprop-change是否在手工状态下正常运行。输入命令:sh-3.2# . pre-revprop-change,结果提示“h: pre-revprop-change: line 67: syntax error: unexpected end of file”,该脚本未能在命令行状态下手工正确执行,问题出在文件本身上了,看来。另:
感谢
SVNBook的帮助,多谢你们高质量的翻译水平。
6.同样,用脚本调试也是同样的报告:sh-3.2# sh -x pre-revprop-change par
7.修改脚本文件格式:sh-3.2# vi pre-revprop-change。感谢
futureinhands的提醒
。
8.在VI中如下输入
:set fileformat=unix
:w
:q ,然后回车
9.再次尝试sh -x pre-revprop-change par,此时,应该输出“+ echo 'Changing revision properties other than svn:log is prohibited'
Changing revision properties other than svn:log is prohibited
+ exit 1”
10.OK,再次从Winodws用TortoiseSVN修改日志后,提交保存到SVN版本库中成功。
=================================================
希望对有同样遭遇的朋友有用。
分享到:
相关推荐
通过网络对Subversion版本库进行写操作发生问题。 在Windows XP下,Subversion服务器有时候看起来发送损坏的数据。 跟踪Subversion客户端和Apache服务器通话最好的方法是什么? 我刚刚编译了二进制分发版本,当我...
通过网络对Subversion版本库进行写操作发生问题。 在Windows XP下,Subversion服务器有时候看起来发送损坏的数据。 跟踪Subversion客户端和Apache服务器通话最好的方法是什么? 我刚刚编译了二进制分发版本,当我...
SVN,全称为Subversion,是一种广泛使用的版本控制系统,它允许团队协作开发,跟踪文件和目录的更改,并恢复过去的版本。在本文中,我们将深入探讨SVN客户端的下载、安装和基本使用方法。 首先,SVN客户端是与SVN...
- **提交更改**:使用`svn commit -m "commit message"`将本地更改保存到版本库。 - **更新**:使用`svn update`获取版本库的最新更改。 - **解决冲突**:当遇到冲突时,手动编辑冲突文件,标记已解决,然后使用`...
- 提交更改:使用`svn commit`将更改提交到版本库。 - 查看历史记录:通过`svn log`和`svn diff`等命令查看版本历史记录。 #### 知识点六:Subversion的高级主题 - **修订版本指定**:在执行某些命令时,可以...
- Linux/Unix/Mac:使用命令行工具svn,需要安装subversion软件包。 3. SVN命令行操作: - `svn checkout URL`:检出代码。 - `svn commit -m "commit message"`:提交更改。 - `svn update`:更新工作副本。 ...
6. **查看日志(Log)**:使用`svn log`命令可以查看版本历史,了解每个版本的修改情况。 7. **回滚(Revert)**:如果需要撤销本地的修改,可以使用`svn revert`命令恢复到最近的版本。 除了上述基础操作,SVN还...
6. `svn revert`:撤销本地更改,恢复到版本库中的状态。 7. `svn merge`:合并不同分支的更改到当前工作副本。 8. `svn switch`:切换工作副本指向的URL,通常用于切换分支或tag。 9. `svn info`:显示关于工作副本...
当你对本地文件完成了修改,并希望将更改保存到版本库中,需要执行提交操作。提交之前,你可能需要先更新以确保你的更改不会与服务器上的文件发生冲突。提交操作的命令为: ``` svn commit -m "提交信息" ``` 这里的...
32位的SVN客户端是专为32位操作系统设计的,它可以安装在32位版本的Windows、Linux或Mac OS等系统上,用于连接到SVN服务器,执行版本控制操作。 中文包则是为了方便中文用户使用而提供的本地化资源,包括界面语言、...
3. **版本控制**: 了解 SVN 如何记录每次修改,以及如何通过日志(Log)查看历史版本。理解版本号的概念,例如HEAD表示最新版本。 4. **分支与合并**: SVN 支持分支策略,用于并行开发。学习如何创建分支、切换分支...
当你对文件进行修改后,使用`svn commit`命令将这些更改提交回版本库。记得在提交消息中提供清晰的描述,方便其他团队成员理解你的改动。 6. **更新(Update)** 要获取版本库的最新更改,使用`svn update`命令。...
客户端安装和汉化是软件应用过程中常见的步骤,尤其在开源工具如SVN(Subversion)的使用中。SVN是一个版本控制系统,用于管理和跟踪项目源代码的更改,它允许团队成员协同工作,同时保持代码历史的完整记录。下面将...
3. 查看历史(History):`svn log`可以显示版本历史,`svn blame`显示每一行代码的最后修改者。 4. 临时忽略文件:使用`.svnignore`文件可以设置要忽略的文件模式,避免它们被版本控制。 5. 外部依赖(Externals):...
SVN,全称为Subversion,是一款广泛应用于软件开发领域的版本控制系统。它允许团队协作,管理文件和目录的历史版本,确保代码的同步与一致性。在本文中,我们将详细讲解 SVN 1.7.2 版本的安装过程以及配置步骤。 **...
SVN,全称为Subversion,是一款广泛应用于软件开发领域的版本控制系统。它允许团队成员协同工作,跟踪文件和目录的变化,并可以恢复旧版本的文件。在本压缩包中,您将找到有关SVN安装和使用的详细资源,这对于初次...
SVN,全称为Subversion,是一种广泛使用的版本控制系统,用于管理软件项目的源代码和其他文件的变更历史。在本文中,我们将深入探讨SVN的安装过程、基本操作以及它在协同开发中的重要性。 首先,让我们从SVN的安装...
它允许开发团队协作编辑和管理项目文件,同时保持版本控制,确保每次修改都有记录,便于追踪问题、回滚更改以及协同工作。下面将详细阐述SVN服务器和客户端的相关知识点。 1. SVN服务器配置: - 安装:SVN服务器...