Msysgit git svn 字符编码

3
我正在测试git的(在Windows上的msysgit,最新版本1.7.7)SVN集成,通过git svn命令集。一切似乎都很顺利,直到我注意到包含非ASCII字符(例如某些国家字符)的路径被克隆错误。反之亦然-如果我在git中添加文件并使用SVN rebase推送到SVN,则国家字符将在SVN存储库中损坏。
我进行了广泛搜索,包括一些SO上的问题,如this one,但我无法找到确定性的解决方案。我知道有一个msysgit UTF-8分支,但截至今天它已经过时了,而且我甚至不确定那是否是正确的方法。
有没有办法使msysgit(和TortoiseGit)在Windows上与国家字符相关的SVN命令工作?
1个回答

1

除非最近有所改变,否则msysgit没有正确的字符编码支持,因为它使用所谓的Windows文件函数的ANSI版本,这些版本仅限于诸如CP1252之类的代码页。(不幸的是,msysgit项目问题跟踪器已被禁用,这使得难以确认是否仍然存在。)

要使其正常工作,它需要使用Windows函数的Unicode(即UTF-16)版本,并适当转换存储库文件名。

Cygwin 1.7确实使用Windows文件函数的Unicode版本实现了POSIX文件API,可以将其转换为/从UTF-8或其他编码。因此,Cygwin git和svn确实支持非ASCII字符,但我不知道它们是否可以与Tortoise一起使用。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接