【发布时间】:2020-11-25 07:27:17
【问题描述】:
这是我的结构:
* - commit 2
|
* - commit 1
|
* - Merge commit (feature #1)
|\
| * - Feature #1 commit
|/
*
我以前搞砸了,现在我的历史看起来不像我想要的那样干净。
我想知道是否有一种简单的方法可以将 'commit 1' 和 'commit 2' 压缩到 'Merge commit (feature # 1)',所以我最终会得到这样的结果:
* - Merge commit (feature #1)
|\
| * - Feature #1 commit
|/
*
rebase -i 似乎无法识别合并提交,并且似乎会将所有内容压缩到 'Feature #1 commit' 中,这是不可取的。
谢谢
【问题讨论】:
-
我不得不质疑结果是否令人满意。为什么要在合并提交中进行不在“功能 #1 提交”中的其他修改?
-
我完全同意@j6t。你为什么要努力为你未来的自己(如果不是同事)制造谎言?历史不会反映真实发生的事情。不过,您可能有特定的原因。这里没有评判,只是试图理解。
-
我同意你们的观点,这似乎有点掩饰。在这种特殊情况下,我是目前唯一一个在 repo 上的人(忙着准备它以供其他人使用),只是为了我的缘故,我希望历史记录尽可能干净。两次提交中的更改并不重要,也不与任何特定的工作相关,所以我只是想如果它不是太复杂的话,我就把它们压扁。