[bug] git-check-ignore and file names with unicode chars in name - sys-out filename is corrupted
- From
- Paul Hammant <paul@hammant.org>
- Date
- Aug 9, 2016, 05:47 UTC
- Message-ID
- <CA+298UiKf6heNPy-NZSfdx47jyS_aK+C8UX3vh6OB3_XE+pn=g@mail.gmail.com>
Reproduction:
$ echo "*.ignoreme" >> .gitignore # (and commit) $ touch "fooo-€.ignoreme" $ find . -print | grep fooo | xargs git check-ignore "./fooo-\342\202\254.ignoreme"
You could view that git-check-ignore isn't corrupting anything, it is just outputting another form for the file name (octal escaped), but it doesn't need to change it at all, and its causing downstream problems in bash scripting.
Of course this may get munged by gmail or a list manager. In the text above, you should see unicode char "euro sign" to the right of a dash, and the left of .ignoreme
Git version is 2.9.2
-ph