[StGIT BUG] StGIT errors out on rebasing patch deleting file with Unicode filename
- From
Jakub Narebski <jnareb@gmail.com>
- Date
- Jun 1, 2008, 08:46 UTC
- Message-ID
- <200806011046.51872.jnareb@gmail.com>
StGIT errors out on rebasing patch which deletes file with Unicode characters in filename (with characters outside US-ASCII in filename). The patch in question is patch deleting gitweb/test/* in git directory, and is present already on the 'origin' branch (the branch we rebase onto), so stg-rebase should result in an empty patch (as first patch).
"gitweb/test/M\303\244rchen" | 2 -- gitweb/test/file with spaces | 4 ---- gitweb/test/file+plus+sign | 6 ------ 3 files changed, 0 insertions(+), 12 deletions(-) delete mode 100644 gitweb/test/Märchen delete mode 100644 gitweb/test/file with spaces delete mode 100644 gitweb/test/file+plus+sign
I guess the error is caused by using unescaped (quoted) filename.
Below is StGIT's error message:
1248:[gitweb/web@git]# stg rebase origin
Checking for changes in the working directory ... done
Popping all applied patches ... done
Rebasing to "origin" ... Traceback (most recent call last):
File "/usr/bin/stg", line 43, in ?
main()
File "/usr/lib/python2.4/site-packages/stgit/main.py", line 281, in main
command.func(parser, options, args)
File "/usr/lib/python2.4/site-packages/stgit/commands/rebase.py", line 70, in func
rebase(crt_series, args[0])
File "/usr/lib/python2.4/site-packages/stgit/commands/common.py", line 356, in rebase
git.rebase(tree_id = tree_id)
File "/usr/lib/python2.4/site-packages/stgit/git.py", line 927, in rebase
reset(tree_id = tree_id)
File "/usr/lib/python2.4/site-packages/stgit/git.py", line 872, in reset
map(os.remove, rm_files)
OSError: [Errno 2] No such file or directory: '"gitweb/test/M\\303\\244rchen"'
1249:[gitweb/web@git]# stg version
Stacked GIT 0.14.2
git version 1.5.5.3
Python version 2.4.3 (#1, Jun 13 2006, 16:41:18)
[GCC 4.0.2 20051125 (Red Hat 4.0.2-8)]-- Jakub Narebski Poland