Git 如何在没有合并提交的情况下进行合并,但保留哈希值(在 git 日志中有一条直线)

Git how to merge without a merge commit, but preserving hashes (to have a straight graph line in the git log)

所以我有 2 个分支 - develop_1develop_2
第一个需要合并到第二个(假设 develop_1 中有 3 个提交需要在 develop_2 中)。

我知道有像 merge 和 rebase 这样的合并策略。
合并将保留提交哈希,但会创建另一个合并提交,并且 git 日志在这种情况下不会那么干净。
Rebase 将使 git 图变得漂亮但会更改提交哈希,因此下次我比较这两个分支时,它仍然会显示差异(虽然代码更改实际上已合并并且实际上是 develop_1 分支完全合并到 develop_2).

我尝试挑选需要的提交 - 哈希已更改。 补丁也改变了哈希值。

有没有办法做到这一点 - 不要创建合并提交,在 git 图中有一条直线,并且 git system (Github) 以后不显示分支之间的区别吗?

如果分支可以快进,那么您在进行 git 合并时将获得干净的历史记录。否则,在无法完成的情况下,你就倒霉了,没有办法在保持线性历史的同时不改变哈希值。至于创建线性历史,您需要重写要合并到的分支的部分历史。

如果我理解正确的话,就是在 develop_1

之上重新设置 develop_2