gpt4 book ai didi

git 高级别名补全

转载 作者:行者123 更新时间:2023-12-03 23:03:13 26 4
gpt4 key购买 nike

我有 advanced别名在我的 .gitconfig 文件中,我想支持选项卡完成。
例如,这个简单的别名允许 refs 的 tab 补全(假设 git 补全已经被提供):

[alias]
co = checkout
但是,这不会:
[alias]
co = "!f() { git checkout \"${@}\"; }; f}"
有什么方法可以为这些别名添加对制表符完成的支持吗?

最佳答案

事实证明,至少从 git v2.1.0 开始,可以向“复杂别名”添加制表符补全支持。每 git-completion.bash :

# If you use complex aliases of form '!f() { ... }; f', you can use the null
# command ':' as the first command in the function body to declare the desired
# completion style. For example '!f() { : git commit ; ... }; f' will
# tell the completion to use commit completion. This also works with aliases
# of form "!sh -c '...'". For example, "!sh -c ': git commit ; ... '".
因此,这有效:
  co = "!f() { : git checkout ; git checkout \"${@}\"; }; f}"
请注意模式, !f意义重大。这不起作用: ! f (插入空格,虽然函数名并不重要)。

关于git 高级别名补全,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64272518/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com