Git完成:
我的系统上的 git 文件名自动完成有困难。我在 OS X (10.9.3) 上使用zsh(5.0.5) 和git(1.9.3)。双方zsh并git已通过自制软件已经安装完毕。(完整版输出在帖子底部。)
git的文件名补全没有像我期望的那样插入空格。当我输入名称中带有空格的文件名时,shell 会插入文件名而不转义空格。zsh的内置完成不会这样做,但git's 做了。
这是我所看到的一个例子。
我有一个存储库,其中包含一些名称中带有空格的文件。
% ls -la
test
test four - latest.txt
test three.txt
test two
Run Code Online (Sandbox Code Playgroud)
当我使用制表符完成插入文件名时,shell 反斜杠会按预期对文件名进行转义。
% echo "testing" >> test<tab>
Run Code Online (Sandbox Code Playgroud)
点击标签三下后自动完成。
% echo "testing" >> test\ four\ -\ latest.txt
––– file
test test\ four\ -\ latest.txt test\ three.txt test\ two
Run Code Online (Sandbox Code Playgroud)
git status 用引号显示这些文件名(它完全理解发生了什么):
% git status --short
M test
M "test four - latest.txt" …Run Code Online (Sandbox Code Playgroud)