【发布时间】:2021-10-08 16:47:34
【问题描述】:
假设我有 2 个分支 A(旧的)和 B(新的),最近分开了。在 A2 中我犯了一些错误(破坏了一些我想保留的文件的历史记录),我用 B2 修复了这些错误。
我想将分支 B 的工作目录带到提交 A3 的状态,但不要合并/提交它。相反,我宁愿只进行(暂存/未暂存)本地更改,以便在下一次提交后,B3 将与 A3 相同(但不以任何方式链接到 A2 或 A3):
A1 - [A2 - A3 - A4] (A will be deleted after the fix)
\
B2 - B3=(state of)A3 - A4
在我的情况下这样做的原因是我弄乱了中间状态 A2,我想用 B2 修复它,然后直接用 A3 继续。
我想到的最简单的方法是在另一个文件夹中检出 A3,删除 B 的内容并用 A3 的内容覆盖。
有Git命令可以直接实现吗?
【问题讨论】:
-
赞成。我在这里是因为我在 git* 服务上的分叉存储库不会让我强制推送到我的主分支,该分支已经(错误地)与上游主分支分道扬镳。
标签: git merge version-control branch