现在一直在寻找解决方案,因为我离git专家很远 - 即使我接近解决方案,我也无法稍微修改它以完成它。
我一直在尝试像这里建议的那样工作:http://nvie.com/posts/a-successful-git-branching-model/,但是由于匆忙以及什么时候没有为修补程序分支 - 我从dev而不是master分支。
简体,我们可以说有以下历史记录:
A---B---C--------D---- < developer
\ / \ /
R1--R2 H1---H2
\ \
--------X---------Y--- < master
R1和R2是相对分支提交,并且没问题。但是,H1和H2是修补程序分支提交,H1应该具有来自X(主)的分支,而不是C(dev)。由于X和C提交后面都有相同的代码,是否可以从X中获得H1分支?
我希望看起来像这样:
A---B---C--------D---- < developer
\ / /
R1--R2 H1---H2
\ / \
--------X---------Y--- < master
这根本不会改变代码,我只是想保持一致,并且在他们应该的地方开始分支。事情是 - 以后在开发和主分支上都会有更多的提交。 H1-H2分支基本上超过一个月,稍后提交了超过一百个。
正如我所指出的那样,我是一个初学者,并且一直在玩rebase而不是什么,但结果却非常糟糕。
有什么办法治愈吗?
答案 0 :(得分:2)
如果不重写H1,你就不能这样做,然后重写H2,这也意味着重写D和Y.所以所有的提交都需要改变和重新发布。重新发布已发布的提交通常是一个坏主意。所以,如果这不是一个太大的问题,你就不应该这样做,只是保持原样。
如果您仍想这样做,可以按照以下步骤进行:
git reset --hard X
)。