一:多个commit合并到一个commit
适用场景举例:clone下来代码后进行了多次提交,但是约束要求你只能有一个提交履历,所以要对你提交的这些履历进行压缩合并
1,git log 查看你提交了多少次
2,git rebase -i head~n(n为你要将最新的多少次进行合并)
3,会弹出一个修改页面,最上面的第一条pick必须保留,后面几次的pick都变成squash,保存退出
此时pick的履历会被保留 ,squash的履历被压缩合并
4,会弹出一个修改提交履历message的界面,可将合并的提交修改成一个新的提交message,根据实际情况修改或者不修改
5,git push -f
二:多次提交都提交到一个commit
适用场景举例:clone下来代码后进行了一次提交,还想进行提交,但是约束要求你只能有一次提交履历,后面的提交都要提交到第一次的履历中
1,git add
2,git commit --amend 弹出修改履历message页面,根据实际情况修改或者不修改
3,git push -f
三:删除所有的提交履历,变成一个空分支
git checkout --orphan newBranch
新建一个没有提交履历的新空分支,暂存区和工作目录中的文件不会被自动清空