有时候在改一些bug的时候,须要重复的commit,而后发动pull request时,commit 号就会十分多,有的公司会要求合并这些commit,这时咱们能够用 squash 来合并曾经提交的commit.

  1. 首先git log 查看曾经提交的记录

    git logcommit 7e1c7e33c328f9c1fc954790386b14978612a30f (HEAD -> newbranch)Author: yuanjie111 <284522843@qq.com>Date:   Sat Jun 12 13:55:58 2021 +0800111commit 3a30ba5c71349947e512c6b0c481854a19418d10 (origin/newbranch)Author: **Date:   Sat Jun 12 13:03:01 2021 +0800config centercommit 2873ff1b3c92e9a4b0c4937a5a4a27d5178efe2bAuthor: ***Date:   Sat Jun 12 12:48:29 2021 +0800config centercommit ba62f39480360977e08f6e1e288869f2fe4a7ed8Author: ***:...skipping...commit 7e1c7e33c328f9c1fc954790386b14978612a30f (HEAD -> newbranch)Author: ****Date:   Sat Jun 12 13:55:58 2021 +0800111
  2. 而后应用 git rebase -i HEAD~<number>

    git rebase -i HEAD~10//HEAD~10的含意是从头部开始追溯10条记录


    将须要留下的commit 放弃pick 状态,须要合并的改为 s即可,如下图,只保留了一个commit,

    而后:wq退出
    3.push 到origin 则实现了合并。