【发布时间】:2022-11-01 12:15:06
【问题描述】:
我有一个具有以下结构的代码公共存储库,新功能是通过从 master 断开一个新分支并将其合并回来来实现的。
(错误修正)
|
ü
/ (掌握)
/ |
A--B--C--D--E...J--K
|
(生产)
假设生产指向(B)的提交中有一个错误。
- 在 Git 中将错误修复应用到生产环境的推荐/最佳方法是什么?
- 是否可以将 bugfix(U) 应用到以后的功能/提交(C、D、E 等),如果可以,推荐的方法是什么?
(掌握) | A---B---C'---D'---E' ... J'---K' | (生产)- 是否可以让提交 C 指向 U ?
(错误修正)(主) | | A---B---U---C---D---E ... J---K | (生产)如果是这样,我如何将更改应用于 C、D、E ..
(错误修正)(主) | | A---B---U---C'---D'---E' ... J'---K' | (生产)编辑
- 澄清问题
- 我不想将 (U) 合并到 master,可以说这是因为我不希望 (K) 投入生产
- 我会将生产从 C、D、E... 转移到 K,而不是直接转移到 K
【问题讨论】:
-
将它应用到 master 的最简单方法是在 master 之上挑选它(即它将在
K之后存在)。您是否有特定的原因不想这样做?你需要D本身存在吗和错误修复或者如果master上的最新提交有修复就足够了吗?虽然可以按照您的建议进行操作,但需要重写 master 的历史记录,这是一个非常糟糕的主意,尤其是对于公共存储库。
标签: git