Git流撤消已完成/合并的修补程序分支

Git流撤消已完成/合并的修补程序分支,git,git-flow,hotfix,Git,Git Flow,Hotfix,我知道在堆栈溢出上有很多类似的情况,甚至在互联网上 我就是找不到一个合适的答案来解决我的问题 我的处境: 我做了一个快速的ASCII艺术,这样你可以更好地描绘它 A-B———C---D-M # Dev \ / X-Y—Z # Release 这是几天前创建的版本。 在分支开发人员的M提交上,在发布之后,我创建了一个新特性,修改了很多代码,然后完成了特性和合并 现在想象一下,在提交N时,在发布之后,在新特性之后,当特性现在合并到dev中时

我知道在堆栈溢出上有很多类似的情况,甚至在互联网上

我就是找不到一个合适的答案来解决我的问题

我的处境:

我做了一个快速的ASCII艺术,这样你可以更好地描绘它

    A-B———C---D-M     # Dev
     \    /
     X-Y—Z         # Release
这是几天前创建的版本。 在分支开发人员的M提交上,在发布之后,我创建了一个新特性,修改了很多代码,然后完成了特性和合并

现在想象一下,在提交N时,在发布之后,在新特性之后,当特性现在合并到dev中时。 我从以前的版本(ASCII艺术)创建了一个修补程序

此修补程序只是特定库的更新

我在更新库之后完成了修补程序,然后将其合并到dev和master。 但是它搞砸了我的开发分支,现在我不能继续工作了,因为我的开发分支现在已经从修改了热修复程序的版本中过时了

我的问题是如何避免这种情况


此外,我是否可以从Dev和Master中删除此修补程序,以便从我当前的Dev中创建一个新的发行版分支,而不是从旧的Dev分支中创建一个修补程序?

最后,我只是在提交时改变了我的想法,我合并了发行版

然后我更新了库,发布了一个新版本

最后回到我的开发分支,修复上一个热修复程序中的一些合并冲突


另一个解决方案是不完成我的功能,保留分支,然后在发行版上进行热修复,然后完成该功能,以便将其合并到开发分支中,而不会造成混乱。

最后,我只是在提交时改变主意,我合并了发行版

然后我更新了库,发布了一个新版本

最后回到我的开发分支,修复上一个热修复程序中的一些合并冲突

另一个解决方案是不完成我的特性,保留分支,然后在发行版上进行热修复,然后完成该特性,以便将其合并到开发分支中而不会造成混乱