3

我的 Windows 的语言环境是中文/代码页 936。当我通过 Tortoise SVN 创建补丁时(即使 Tortoise SVN 是英文 UI),它会创建一个带有如下标题的补丁文件:

Index: C:/mypath/myfile.txt
===================================================================
--- C:/mypath/myfile.txt    (版本 3174)
+++ C:/mypath/myfile.txt    (工作副本)

标头中的字符(工作副本)采用 GBK(CP936) 编码。而mymyfile.txt是UTF-8文件,所以补丁的内容是UTF-8编码的。整个补丁文件是混合编码的,这很糟糕。

如何使补丁的标题为英文和 ASCII?

4

1 回答 1

1

虽然这并不能解决 TortoiseSVN 问题,但您可以使用 Windows Powershell 等命令行客户端生成补丁。当您将环境变量设置LC_ALL为 C时,您可以在那里禁用翻译。

:: disable the translation
set LC_ALL=C
:: create the patch
svn diff {diff params} > patch.diff
于 2012-11-03T15:18:14.757 回答