2

为什么会git push导致强制更新,导致源上的提交丢失?可以做些什么来防止这种情况发生?

  • 客户端:git 版本 1.8.2.2
  • push.default调成simple
  • 服务器端:gitlab 5.1.0 4854087

根据一些搜索,它可能与+登录remote.origin.fetch设置有关,但是当我克隆一个新的存储库时,该+符号已经存在(所以它不是由我弄乱存储库引起的)。

4

1 回答 1

0

如果您在配置中看到.mirroroption,那么 git push 会覆盖所有内容是有道理的:

remote.<name>.mirror

如果为 true,则推送到此遥控器将自动表现得就像--mirror在命令行上给出了选项一样。

你可以用git config remote.backup.mirror true.

如果您有权访问远程回购设置,那么您可以执行以下操作:

git config receive.denyNonFastForwards true

为了防止那些强行推动。

但是,例如 GitHub 等远程存储库尚不支持此功能。

于 2013-05-27T11:42:54.040 回答