“git push --force-with-lease”的短标志?

pka*_*amb 1 git command-line-interface git-push

我已经开始使用git push --force-with-lease而不是--force在大多数情况下用于额外的分支保护:

我什至可以尝试将此选项设置为默认选项,如下所述:

但使用时的主要烦恼--force-with-lease是输入该标志的尴尬措辞和冗长语法。

Git--force-f标志更短并且更容易键入,但不提供额外的安全性。


是否有缩写形式--force-with-lease,例如--fwl

  • 如果没有,是否有原因没有添加?更方便的标志似乎会增加更安全功能的采用。git 的创建者是否讨论过这个问题?

如果默认情况下不存在这样的标志,我如何在自己的计算机上创建这样的标志或别名?

mne*_*rov 6

该选项没有简写。要创建全局别名,只需将其添加到~/.gitconfig

[alias]
        push-fwl = push --force-with-lease
Run Code Online (Sandbox Code Playgroud)

您可以在其中使用别名,例如 ->git push-fwl

当然,您可以push-fwl随意命名。

至于文档,我认为这个特定选项没有简写的原因是因为其使用的复杂性。请记住,调用方法有很多种--force-with-lease

摘自文档:

--[no-]force-with-lease, --force-with-lease=<参考名称>, --force-with-lease=<参考名称>:<期望>

这意味着它是基于我们希望如何使用此选项的每次使用。我假设维护者无法知道所有这些选项中哪一个最受欢迎,以便对其进行简写。

更不用说这--force是一个更知名、更常用的选项,因此对其进行简写是有意义的。

该文档进一步告诉我们如何针对所有这些选项进入不同的情况:

--force-with-lease 单独使用,无需指定详细信息,将通过要求其当前值与我们为其拥有的远程跟踪分支相同来保护将要更新的所有远程引用。

--force-with-lease=<refname>,如果不指定预期值,将保护指定的引用(单独),如果它要更新,则要求其当前值与远程跟踪分支相同我们有这个目的。

--force-with-lease=<refname>:<expect> 将保护指定的引用(单独),如果它要被更新,则要求其当前值与指定值相同(允许与我们用于 refname 的远程跟踪分支不同,或者当使用此形式时我们甚至不需要有这样的远程跟踪分支)。如果 是空字符串,则指定的引用必须不存在。

请注意,除了 --force-with-lease=<refname>:<expect> 之外的所有明确指定 ref 的预期当前值的形式仍然是实验性的,随着我们获得此功能的经验,它们的语义可能会发生变化。

鉴于您可以创建别名,我认为 git 的维护者没有充分的理由为相对晦涩的命令选项提供简写。