gpt4 book ai didi

mercurial - 如何取消 Mercurial 中的 merge ?

转载 作者:行者123 更新时间:2023-12-02 22:40:29 26 4
gpt4 key购买 nike

我环顾四周,但没有在这里看到我的确切案例,所以我希望有人能提供帮助。

SCons 项目 (https://bitbucket.org/scons/scons) 在默认分支上进行开发。我最近错误地 merge 并从开发人员(称他为 DEV)存储库中推送了一些尚未准备好 merge 的更改。所以我必须撤销这些更改(hg backout -rXXX --parent YYY)并将其推送到 bitbucket。但现在我们如何才能前进呢?撤销维基页面说:

Warning: Backing out a merge will lead to trouble if you ever want to redo the merge. The only safe way to deal with a bad merge is to abandon the branch.

我们当然不能放弃默认分支。所以现在 DEV 无法从主存储库 merge ,否则他将丢失所有正在进行的更改(因为我的回退删除了它们)。现在没有人可以从 DEV 的存储库 merge ,因为 bitbucket 存储库已经包含了他的所有更改(以及撤销)。我们似乎陷入了困境。

我想我有两个问题:

  1. 我们现在应该做什么,让 DEV 能够取得进展:他需要一个包含他可以工作的更改的存储库,其形式是当他完成这些更改后可以将这些更改 merge 到 bitbucket 存储库中。

  2. 一旦发现推送的 merge 错误,我应该做什么?

(请注意,这里没有命名分支;一切都是默认的。)

谢谢!

最佳答案

Of course we can't abandon the default branch.

当然可以。更新到 merge 之前并继续在那里工作,这就是现在的提示。如果旧分支上有更改,您需要将它们移植。然后你可以做 no-op merge绑住死头,或者你可以用 hg commit --close-branch 关闭它。看看this answer .

关于mercurial - 如何取消 Mercurial 中的 merge ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12882672/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com