修复svn hook导致的字符集错误

修改pre-commit钩子,如果返回中文信息,可能会报如下错误:

Error output could not be translated from the native locale to UTF-8.

网上流传的解决方案,是增加以下代码:
export LANG=zh_CN.UTF-8

该方法实测无效!

其实这是svn的一个bug,存在了很长时间,到svn1.8时才彻底修复,修复方案是,升级到svn1.8或更高版本,然后修改apache mod_dav_svn插件的配置。

具体步骤如下:

第一步
修改centos repo来源
vim /etc/yum.repos.d/wandisco-svn.repo
输入
[WandiscoSVN]
name=Wandisco SVN Repo
baseurl=http://opensource.wandisco.com/centos/$releasever/svn-1.8/RPMS/$basearch/
enabled=1
gpgcheck=0
保存

第二步
yum install subversion
yum install mod_dav_svn

如果报版本冲突,通过yum remove把老版本的subversion删除。

安装后确认版本号
svn --version

第三步
vim /etc/httpd/conf/httpd.conf
增加
<IfModule mod_dav_fs.c>
# Location of the WebDAV lock database.
DAVLockDB /var/lib/dav/lockdb
SVNUseUTF8 On
</IfModule>
保存
service httpd restart

问题彻底解决。

时间: 2024-08-07 08:20:26

修复svn hook导致的字符集错误的相关文章

[版本管理]有惊无险修复svn服务器Invalid filesystem revision number问题

问题起因:某一天下午,团队成员在向svn服务端提交新内容,突然整栋楼断电了,自然,提交的过程被中断了.当时,还没有什么想法. 等有电后,另外一同事在update项目时,发现无法正常使用svn,一直报异常信息: Invalid filesystem revision number svn: 没有版本 19956 处理过程: 一时不得其法,google了后,发现了遇到了同样问题的同行http://coldfusion-archive.robgonda.com/blog/index.cfm/2007/

表收集错误导致执行计划错误

有时候,表收集信息错误,导致执行计划错误问题. SQL> insert into test values(1,'user1'); 已创建 1 行. SQL> commit; 提交完成. SQL> select * from test; ID NAME ---------- ---------------------------------------- 1 user1 SQL> insert into test values(2,'user2'); 已创建 1 行. SQL>

SVN Hook造成SVN提交速度慢的问题

单就个人感情来说,我其实喜欢git.但显然subversion才是更普遍的版本控制管理工具,适合用在团队开发中. 那么,有一个很常见的需求就是把工程师提交的代码,更新到htdocs目录,这时候需要用svn hook,简单做法就是写一个post-commit hook: svn update /var/htdocs/ 但当svn目录越来越大,文件越来越多的时候,svn提交也会越来越慢.因为每一次的提交都会造成整个svn的更新. 这个时候,或许可以稍微变通一下,尝试用svnlook只更新那些有变化的

为什么svn提交更新时会出现错误:MKCOL of &#39;...&#39;: 405 Method Not Allowed

通常,这是因为服务器上已经有了同名的文件/文件夹,而本地又要添加新的文件/文件夹. 解决办法是把本地文件复制一份到别的地方(记得去除.svn文件夹),从服务器checkout命名冲突的部分,然后用把复制的部分再复制过来,最后再checkin. 为什么svn提交更新时会出现错误:MKCOL of '...': 405 Method Not Allowed

mysql 字符集错误 Illegal mix of collations

SELECT * FROM     mobile_card.mcc_o2o_repayment_request orr         INNER JOIN     bi_o2o_sfq.CARD C ON C.CARDID = orr.cardno LIMIT 0, 50 Error Code: 1267. Illegal mix of collations (utf8_general_ci,IMPLICIT) and (utf8_unicode_ci,IMPLICIT) for operat

oracle字符集错误

网站显示乱码了,查询oracle字符集 select userenv('language') from dual; AMERICAN_AMERICA.WE8MSWIN1252 简单一点的办法 dbca重新建立一个实例,创建实例的时候选择字符集如下 oracle字符集错误

在input中回车后页面提交导致出现HTTP 错误 405.0 - Method Not Allowed

前些时间在做一个搜索功能时发现一个比较有意思的现象,场景是这样的:在一个模态窗口中是一个订单列表,页面的顶部有若干个状态筛选框和一个搜索关键字输入框,当焦点在关键字输入框时按回车,本来是对input的keyup事件做了监听,当发现是按了回车键时便自动提交搜索请求的,但输入关键字后按回车时页面竟然跳转了,并且出现"HTTP 错误 405.0 - Method Not Allowed无法显示您正在查找的页面,因为使用了无效方法(HTTP 谓词)"的错误,非常纳闷. 按照错误信息及现象(页面

svn 钩子 post-commit 出现255错误解决办法

首先检查代码中是否有可执行命令 #!/bin/sh 然后 检查post-commit权限 post-commit 脚本文件的权限不对,post-commit 脚本必须有 +x 权限. chown svn:svn post-commit chmod +x post-commit svn 钩子 post-commit 出现255错误解决办法

如何解决svn清理失败 不能更新 cleanup失败 cleanup乱码 更新乱码 svn更新提示清理 清理乱码不能清理 svn故障修复SVN cleanup 陷入死循环 svn cleanup时遇到错误怎么办

平时使用svn的过程中,有的时候由于自己操作故障或者系统原因,导致svn不能更新,提示cleanup也不能成功,陷入了死循环 原因是;svn的数据库队列原因 1,下载sqlite3.exe,google一下就有了 2.将下载好的文件放到svn的根目录也就是有svn隐藏文件夹的地方 跟这个文件夹同一个目录即可,如果怎么都找不到,记得显示隐藏的文件夹就可以看到了,不会操作的请google 3.控制台找到sqlite3.exe所在位置 3.1执行:sqlite3 .svn/wc.db "select