美文网首页
如何将某分支的所有提交记录压缩成一个 commit

如何将某分支的所有提交记录压缩成一个 commit

作者: 南国的小狼 | 来源:发表于2020-03-15 00:35 被阅读0次

    操作步骤

    1. 快速找到 first commit 的 commitId,假如找到的 commitId = 38128d5

      git log --oneline | tail -1
      
    2. 将分支软回退到 firstCommitId = 38128d5,软回退将使得所有需提交的内容在暂存区保留,不会回退到工作区

      git reset --soft 38128d5
      
    3. 将暂存区内容添加到最近一次提交,即 firstCommit 记录上

      git commit --amend
      
    4. push 到远端仓库,进行同步

      git push -f
      

    注意

    上述步骤的 1、2、3 步可合并为如下一条命令:

    git log --oneline | tail -1 | awk '{print $1}'| xargs git reset --soft && git commit --amend
    

    如需修改提交信息,修改完毕 :wq 保存退出即可;如不需修改提交信息,直接 :wq 保存退出即可

    然后执行上述第 4 步,push 到远端,进行同步,该操作会覆盖远端分支的提交历史,请自行确认操作风险

    相关文章

      网友评论

          本文标题:如何将某分支的所有提交记录压缩成一个 commit

          本文链接:https://www.haomeiwen.com/subject/brpashtx.html