如何为git-flow别名启用自动完成?

Ale*_*lex 7 git bash alias autocomplete git-flow

这是打破

alias f='git flow feature'
complete -F __git_flow_feature f
Run Code Online (Sandbox Code Playgroud)

它最终起作用(在2个'标签'之后),但在每个"标签"按下时都会抛出错误.

-bash: [: 1: unary operator expected
Run Code Online (Sandbox Code Playgroud)

有任何想法吗?

Mic*_*jer 2

当我这样做时,它对我有用:

  1. wget http://www.triquanta.nl/sites/default/files/git-flow.bash
  2. 源 git-flow.bash
  3. alias f='git 流功能'
  4. 完整-F __git_flow_feature f
  5. Ftabtab

无论如何, “[:1:预期一元运算符”错误的最常见原因是您在 shell 脚本代码中包含以下内容:

if [ 1 = $MYVAL ] 
Run Code Online (Sandbox Code Playgroud)

并且你的MYVAL未设置。检查您的完成功能。您可以添加set -x来调试它。

通常最简单的解决方案是引用变量,以便运算符将获得空参数,但将具有正确数量的参数:

if [ 1 = "$MYVAL" ] 
Run Code Online (Sandbox Code Playgroud)