git合并是合并到前一次提交吗?git合并多次提交怎么操作?

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在内存中的状态

java就业前景和工资待遇怎么样?java职业发展方向是怎样的?

spring怎么注入bean?spring注入bean的几种方式