SVN预提交钩子编码

2024-10-06 11:26:25 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在使用Python脚本实现SVN pre-commit hook:

svnlookPath = 'path-to-svnlook'

f = subprocess.Popen([svnlookPath, 'log', sys.argv[1], '--transaction', sys.argv[2]], stdout=subprocess.PIPE).stdout
commitMessage = f.read()
f.close()
commitMessage = commitMessage.rstrip('\n\r')

print >> sys.stderr, 'Commit message: "' + commitMessage + '"'
sys.exit(1)

我的pre-提交.bat(服务器托管在Windows server 2008上):

^{pr2}$

在客户端,我使用TortoiseSVN。在

一切正常,除了commit message编码。例如,如果commit消息包含俄文字母,它们将显示为“?”(问号)在乌龟窗里。在


Tags: topath脚本messagestdoutsyssvnhook
2条回答

我想说这更多的是.bat的错误,而不是python脚本的错误,因为python具有出色的unicode支持。
也许这个问题的答案可以帮助你。在

Batch file encoding

问题可能是乌龟本身。试试下面的方法

svn日志http://rev_url

看看svn的日志评论是什么。如果它是正确的,那么它可能是乌龟没有显示俄文编码。如果没有预提交钩子进行提交,会发生什么情况?你说得对吗?在

相关问题 更多 >