git rebase使用
思考
1.在开发中,一个小操作就commit很多次,当线上的代码出现紧急问题,需要回滚,些时commit太多,需要一条条commit记录来查看,太浪费时间,目前项目上的commit已经很多了,一个小的bug修复就要commit一次,不利于查看,有没有可以合并多次提交记录的方法呢??
2.目前合并分支使用git merge命令,会产生冲突节点,还有其他合并分支的命令吗?不产生冲突节点?
合并多次commit记录
1.在master分支上有4次提交
2.此时4次提交都是对同一个任务进行修改,可以合并4次提交。
3.查看提交记录 git log
4. git rebase –i HEAD~4(次数)
注意不要合并先前提交的东西,也就是已经提交远程分支的纪录。
简单说一下vi编辑模式如何使用:进入vi编辑模式,按键盘insert可插入,修改好方式后,esc后输入:wq退出保存。
P:提交
F:合并到上一个节点,不要注释。
5.操作成功,此时查看git log只有两次提交。
合并分支
1.准备工作:主分支master分支和分支f1。
2.master分支合并f1分支。
master分支合并f1分支
- 语法:git merge 分支名
2.操作:在master分支,输入git merge origin f1。
注:先解决冲突,何为冲突呢?冲突是,不同分支修改了相同的位置,合并的时候git不知道那个到底是你想保留的,冲突提醒让你手动选择自己要保留的。
3.git merge 解决完冲突后,会产生一个commit 节点。
4.git merge只有发生冲突时,才会产生一个commit 节点,若未有冲突,还想提交一个节点,用git merge –no-ff,也会产生节点。
git rebase合并分支
1.git rebase 分支名
2.解决冲突
git add –A
git rebase --continue
git pull和git pull --rebase
3.git pull 相当于 git fetch +git merge 获取合并
4.git pull –rebase 相当于 git fetch + git rebase获取合并
git rebase合并分支结果
参考学习的网址: https://www.cnblogs.com/xueweihan/p/5743327.html?tdsourcetag=s_pcqq_aiomsg