<p>集线器别名隐藏 git-alias</p>

创建于 2012-03-26  ·  9评论  ·  资料来源: github/hub

hub alias似乎没有考虑--noop ,所以它从https://github.com/visionmedia/git-extras隐藏了git-alias

由于它是特定于集线器的命令,并且仅在设置时有用,因此我建议:

  • 让它知道--noop
  • 将其隐藏为选项而不是命令,即hub [--alias|--shell-alias] [SHELL]
  • 仅当$0明确hub时才起作用
bug ¯\_(ツ)¯

最有用的评论

对于任何命令,如果您想从 shell 中完全跳过hub ,只需执行command git ... 。 例如command git alias

所有9条评论

我花了一段时间才弄清楚你在说什么。 基本上, hub alias隐藏了系统上可能存在的其他git-alias命令(在这种情况下,一个由 git-extras 提供),对吗?

我赞成你的建议 3。但是,这种行为可能会让一些人感到惊讶,因为在其他情况下,调用hub <something>应该与git <something> (当hub别名为git )。 我需要想一想。

感谢您的提醒!

对不起,如果我不清楚; 你正确理解我。

hub alias-command这样的东西也能工作,而且更清楚一点吗?

或者类似的东西...

首先, --noop不会将所有命令转发到git 。 它只显示hub将执行的内容,但不执行它。

我喜欢使hub alias仅在命令被调用为hub而不是git时才起作用的想法。 但是,我不知道如何在技术上做到这一点; $0的值对我来说是hub ,无论我是否通过git别名调用它。

下一个选项是使其成为自定义标志,例如hub --alias 。 然而,这破坏了与已经嵌入eval "$(hub alias -s)"是 shell 的人的向后兼容性。

@cdlm @mislav如果我将 git 别名为 hub,那么hub是否会使 git-extras 别名无用? 我不能使用这里提到的任何很棒的 git-extras 别名https://github.com/tj/git-extras/blob/master/Commands.md吗?

您可以使用该存储库中除git aliasgit fork之外的所有 git-extras 命令,因为hub aliashub fork将优先。

您可以改用git-aliasgit-fork ,或者使用\ (反斜杠): \git alias绕过git别名。 我不是围棋专家,但我一直在乱搞,无论我如何运行可执行文件os.Args[0]总是给出可执行文件的真实名称,即hub ,如@米斯拉夫说。

hub alias的情况下,也许您可​​以使用传递-s来运行hub alias的事实,否则打印弃用通知或转发到git命令。

对于任何命令,如果您想从 shell 中完全跳过hub ,只需执行command git ... 。 例如command git alias

是的,这与使用反斜杠\ , _e.g._ \git具有相同的效果

此页面是否有帮助?
0 / 5 - 0 等级