git push --force-with-lease的简短标记?

问题描述

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

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

尽管使用--force-with-lease的主要烦恼是键入该标志的尴尬短语和冗长的语法。

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


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

  • 如果不是,是否有未添加的原因?一个更方便的标志似乎会增加对安全功能的采用。 git的创建者已经讨论过了吗?

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

解决方法

该选项没有简写形式。要make a global alias,只需将其添加到~/.gitconfig

[alias]
        push-fwl = git push --force-with-lease

您将在其中使用别名的地方--git push-fwl

当然,您可以根据需要命名push-fwl

对于文档,我认为此特定选项简写的原因是因为其用法复杂。请记住,有许多方法可以调用--force-with-lease

摘自文档:

-[no-]租用强制,-force-with-lease = ,-force-with-lease =

这意味着这是我们希望如何使用此选项的逐个使用基础。我以为维护者无法知道所有这些选项中哪一个最常用来简化它。

更不用说--force是一个更广为人知,使用频率更高的选项,因此可以简化它。

文档将继续告诉我们,如何针对所有这些选项进入不同的情况:

-仅凭租借方式而未指定详细信息,将通过要求它们的当前值与我们对它们的远程跟踪分支相同,来保护所有将要更新的远程引用。 >

-force-with-lease = (未指定期望值)将通过要求其当前值与远程值相同来保护命名的ref(单独)(如果要更新)。跟踪分支 为此。

-force-with-lease = 将保护命名的ref(单独)(如果要更新),方法是要求其当前值与指定值相同(可以不同 在远程跟踪分支中,我们需要提供refname,或者使用这种形式时甚至不必具有这样的远程跟踪分支。如果为空字符串,则命名引用必须不存在。

请注意,--force-with-lease = 以外的所有形式(用于明确指定ref的预期当前值)仍处于实验阶段,随着我们对此的经验积累,它们的语义可能会发生变化。 功能。

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