我的Windows语言环境是中文/代码页面936.当我使用Tortoise SVN创建补丁时(即使Tortoise SVN是英文用户界面),它会创建一个包含以下标题的补丁文件:
Index: C:/mypath/myfile.txt
===================================================================
--- C:/mypath/myfile.txt (版本 3174)
+++ C:/mypath/myfile.txt (工作副本)
标题中的字符(工作副本)
是GBK(CP936)编码的。我的myfile.txt
是一个UTF-8文件,因此补丁的内容是UTF-8编码的。整个补丁文件是混合编码的,这很糟糕。
如何使补丁的标题为英文和ASCII?
答案 0 :(得分:1)
虽然这不能解决TortoiseSVN问题,但您可以使用Windows Powershell等命令行客户端生成补丁。将环境变量LC_ALL
设置为C时,可以禁用那里的转换。
:: disable the translation
set LC_ALL=C
:: create the patch
svn diff {diff params} > patch.diff