要将多个 Git commit 合并为一个,可以使用 git rebase
命令。具体步骤如下:
git log
命令查看需要合并的 commit 的哈希值(commit hash)。git rebase -i HEAD~N
命令,其中 N 为需要合并的 commit 数量。例如,如果要合并最近的三个 commit,则 N=3。squash
或 fixup
。squash
表示将该 commit 合并到前面的 commit 中,并生成一个新的 commit message;而 fixup
则表示将该 commit 合并到前面的 commit 中,但不保留它自己的 commit message,只保留前面的 commit message。git log
命令确认合并结果。需要注意的是,使用 squash
或 fixup
命令时,被合并的 commit 是不会被删除的,它们仍然存在于 Git 历史记录中。因此,如果你需要删除这些 commit,请执行 git reset --hard
命令。另外,合并 commit 会改变 Git 历史记录的 SHA-1 值,因此如果你已经将这些 commit 推送到了远程仓库,需要谨慎操作以免破坏 Git 历史记录的连续性。