3

I am testing git's (msysgit on Windows, latest 1.7.7 version) SVN integration via git svn set of commands. Everything seemed to work just fine up to the point when I noticed paths containing non-ASCII characters (e.g. some national characters) are cloned wrong. The same goes vice versa - if I add a file in git and push to SVN using SVN rebase, the national characters are mangled in the SVN repo.

I searched extensively, including some questions on SO, like this one, but I was unable to find a definitive solution. I am aware there is a msysgit UTF-8 fork, but it's largely outdated as of today and I am not even sure if that's the right way to.

Is there a way to make msysgit (and TortoiseGit) SVN-related commands work with national characters on Windows?

Community
  • 1
  • 1
petr k.
  • 8,040
  • 7
  • 41
  • 52

1 Answers1

1

Unless something's changed recently, msysgit does not have proper character encoding support, because it uses the so-called ANSI versions of Windows file functions, which are limited to codepages such as CP1252. (Unfortunately the msysgit project issue tracker has been disabled, which makes it hard to confirm that that's still the case.)

To make this work properly, it would need to use the Unicode (i.e. UTF-16) versions of the Windows functions and convert repository filenames appropriately.

Cygwin 1.7 does implement the POSIX file API in terms of the Unicode versions of Windows file functions, converting to/from UTF-8 or other encodings. Hence, Cygwin git and svn do properly support non-ASCII characters, but I don't know whether they can be used with Tortoise.

ak2
  • 6,629
  • 31
  • 27