我在我想要删除的git存储库中添加了文件。我用rm XXX
删除了它。
现在,git status
告诉我:
Changed but not updated:
deleted: "Sche\314\201ma application + interface.graffle"
无论我如何git rm
,我仍然有:
fatal: pathspec 'Schêma application + interface.graffle' did not match any files
我尝试使用\
转义空格,以\
转义\\
,以"
转义\"
。无论我怎么做,它都失败了。
你有提示吗?
答案 0 :(得分:24)
这将检测到删除:
git add -u
答案 1 :(得分:0)
尝试git gui。你可以正确地逃脱它,但它可能比它的价值太麻烦。它应该正确地逃避这一点。
如果您的问题是暂存删除,只需git add -A
即可将所有更改添加到索引中。
答案 2 :(得分:0)
用单引号括起来。
git rm '"Sche\314\201ma application + interface.graffle"'
如果需要在文件名中转义单引号,请用双引号括起来。因此,如果由于某种原因您的文件名是'“(这是单引号,双引号),请使用
git rm "'"'"'
其中第一组双引号包装单引号,单引号的结束集包装双引号。
这一般是针对Bash,而不仅仅是git。更多关于引用疯狂的信息:How to escape single-quotes within single-quoted strings?