当我使用 Egit 向 Bitbucket 中的团队推送某些内容时(我们都是管理员),之前任何成员的帖子都会被删除。如果他们也推动某些事情,其他成员也会发生同样的事情。
我使用这个配置:
一切都很好,但是这个,有什么想法可以解决这个问题吗?
为什么要检查“强制更新”?
通常(未配置“强制更新”时),在您将丢弃其他人的更改的情况下,服务器会以“非快进”消息拒绝推送。在这种情况下,您必须首先将远程更改合并到本地分支中,然后再次推送。这样,保留了其他更改。
但是,当您选中“强制更新”并推送分支时,远程存储库上的分支会更新为指向它指向本地分支的相同提交。即使您的分支落后或偏离远程分支,也会发生这种情况,导致它有效地覆盖/丢弃其他人的提交。
所以你想要的是禁用“强制更新” refs/heads/*
(头是分支的另一个词)。另请参阅帮助中有关快git push
进的说明。
注意:在某些服务器软件中,可以配置存储库,以便拒绝此类“非快进推送”(无论客户端的强制标志如何)。但这似乎还不受 Bitbucket 支持,请参阅此问题。