Jérémie NIKAES <jeremie.nikaes@xxxxxxxxx> writes: > 2011/6/8 Matthieu Moy <Matthieu.Moy@xxxxxxxxxxxxxxx>: > >> open(my $git, "-|:encoding(UTF-8)", "git cat-file -p $sha1"); there should probably have been a $/ = 1; or some other perl magic to make sure we don't read only the first line there: >> my $file_content = <$git>; >> close($git); > > Yes, that did it ! Thank you boss :-) Then, make it a helper function to call like my $file_content = run_git("cat-file -p $sha1"); and use it where needed. > Although, I'm still encountering issues regarding encoding file names > though, I am going to look deeper now that i have this solution. My advice, at least in the short-term (already discussed offline): use urlencode ( http://php.net/manual/en/function.urlencode.php ) on pull, and don't bother with encoding on push. Non-ascii characters in filenames are a nightmare ... If you go for utf8 filenames, you should test that your script works in various environments, like LANG=fr_FR.ISO-8859-1 xterm (launch a terminal with latin-1 encoding inside) and Mac OS X (which does some weird utf-8-normalization on filenames), and probably windows (no idea how filename encoding works there). If it doesn't work in one of them, you'll have to provide a fall-back to plain ascii for these users, which will most likely be the short-term solution I'm proposing. -- Matthieu Moy http://www-verimag.imag.fr/~moy/ -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html