git push --force与git push非快进式更新之间的区别

3

假设我运行了

git push --force origin master:master(强制更新)

在另一个地方,我运行了

git push origin +master:master(非快进式更新)

这两种情况相同吗?有什么情况下它们的行为不同吗?

1个回答

4
他们是完全相同的。根据文档的描述:
引用:

通过在refspec前面添加可选的前导符+(或使用--force命令行选项),可以覆盖有关更新不允许的所有规则。

然而,很明显,--force适用于正在推送的所有内容,而+仅适用于带有前缀+的那个refspec(在这种情况下为master)。在您问题中的两个命令中,这没有任何区别,因为它们都只有一个refspec。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接