Git是java开发中经常使用到的开发工具,它能够提交储存代码,也可以进行合并提交,删除分支列出分支等各项操作,那git合并是合并到前一次提交吗?下面来我们就来给大家讲解一下。
git合并可以第2次和第3次提交的内容合并成一次提交。
git合并多次提交怎么操作?
查看历史,确定要合并的提交
git log
注意,不要合并了其他人的提交,不要合并了其他人的提交,不要合并了其他人的提交
合并命令
git rebase -i HEAD~6
或者
git rebase -i ***
*** 指的是你的某个提交
修改第 2~6 行的第一个单词 pick 为 squash or s,然后 输入:wq or x 保存退出。
pick 的意思是要执行这个 commit
squash 的意识是这个 commit 会被合并到前一个 commit
中间可能会出现的情况
git 会压缩提交历史,若有冲突,需要进行修改,修改的时候保留最新的历史记录,修改完之后输入以下命令:
git add . git rebase --continue
若想退出放弃此次压缩,执行命令:
git rebase --abort
若无冲突 or 冲突已 fix,则会出现一个 commit message 编辑页面,修改 commit message ,然后 输入:wq or x 保存退出。
同步到远程 git 仓库
输入:
git push -f
or
git push --force
查看远程仓库效果,多次 commit 已被合并成一次 commit。
我们将自己的分支合并到主分支的时候,都希望将自己的多次修改bug和调试的commit合并为一次功能commit,然后merge到主分支中。
第一步git rebase -i
可以通过git rebase命令实现
git rebase -i 分支号
其中“分支号”为合并不受影响的分支号。
例如我需要合并最近2次提交可以使用
git rebase -i HEAD^^^
第二步选择合并的提交
从上到下依次是老-->新的过程
通常第一个选择 pick,后面的选择squash(表示这次提交合并到上一个提交).
选择好以后wq保存推出
第三步修改合并后提交的MESSAGE
按照vi的方法直接修改,wq保存
如果在合并中需要中止 git rebase --abort
合并中遇到问题例如冲突,解决之后 git add . && git rebase --continue
这样我们就完成了git代码合并,git代码合并可以和之前的内容一起提交,也可以单独提交,主要还是看我们开发的情况!最后大家如果想要了解更多其他工具教程知识,敬请关注奇Q工具网。
推荐阅读:
Java在内存中的状态如何?java内存回收机制之Java在内存中的状态