[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Unicode characters in filenames on windows

From: Варфоломеев Игорь <i3v_at_mail.ru>
Date: Tue, 2 Jul 2013 16:53:09 +0400

Hi all,

I've already posted this issue report here
( http://thread.gmane.org/gmane.comp.version-control.subversion.user/113541 ). And I think this response
( http://thread.gmane.org/gmane.comp.version-control.subversion.user/113542 ) might be considered
as "issue confirmation". No one else responded in ~3 weeks, so, I thought I should re-post it here.

Version: just tested on
        svn, version 1.8.0 (r1490375);
        compiled Jun 17 2013, 19:47:41 on x86-microsoft-windows.
        (Part of Tortoise SVN 1.8.0 x64 @ Win7 x64).

* THE ISSUE *:
===================================================================================
I'm unable to get TortoiseSVN command-line tool to work with files with UTF-8 characters in their name.

* Batch: *
---------------------------------------------------------------------------------------------------------------------------------------
Here's a batch file, reproducing the issue:
https://skydrive.live.com/redir?resid=8FD4EC3161ABA67A!916

---------------------------------------------------------------------------------------------------------------------------------------

* Workflow: *

1. Create "c:\temp\UNCtest\R_UNCtest\" folder
2. Create a repository with default file structure in it
3. Checkout "trunk" dir to "c:\temp\WC\trunk"
4. Create file "c:\temp\WC\trunk\1‐2.txt" ,
note, that filename consists of 3 symbols, and the one in the middle is "HYPHEN" or &#8208,
(see http://www.fileformat.info/info/unicode/char/2010/index.htm )

5. Add and commit this file with Tortoise GUI.
(this works OK)
6. start windows cmd
7. make sure your cmd is set to use UTF-8 compatible font, for example, "Consolas"
 (see http://stackoverflow.com/questions/10764920/utf-16-on-cmd-exe/10765469#10765469 ).
8. navigate to "c:\temp\WC\trunk"
9. type "dir" - you should see the listing correctly, including "1‐2.txt" file
10. Type "mkdir 1‐2" - this should correctly create a directory.
11. Type "svn info 1‐2.txt"
Result:
--------------------------------------------------
svn: warning: W155010: The node 'C:\TEMP\UNCtest\WC\trunk\1?2.txt' was not found
.

svn: E200009: Could not display info for all targets because some targets don't
exist
--------------------------------------------------
* Note those 8208 symbol was replaced with question mark.
* changing cmd's codepage to 65001
(see http://stackoverflow.com/questions/388490/unicode-characters-in-windows-command-line-how/388500#388500 ) won't help
* launching cmd with '/u' switch
(see http://stackoverflow.com/questions/2182568/batch-script-is-not-executed-if-chcp-was-called/2462138#2462138 ) won't help

Thank you for your attention!

Best regards,
Igor Varfolomeev
Received on 2013-07-02 15:45:13 CEST

This is an archived mail posted to the Subversion Dev mailing list.