合并某个分支的某次提交
主线分支:master
① 基于master分支创建一个分支:feature-1,并切换到 feature-1 分支
② 在feature-1分支上进行两次提交
③ 基于master 分支创建一个新的分支:feature-2,并切换到 feature-2 分支
④ 在 feature-2 分支上找到 Log–>Branch–>feature-1 分支的提交记录:
⑤ 在 feature-2 分支上 选择将 feature-1 分支的哪些提交记录合并到 feature-2 ,这样就可以实现将部分提交记录合并到 feature-2 :
⑥ 查看 feature-2 的提交记录,可以看到 feature-2 分支上也有了最新的两条提交记录:
⑦ 将 feature-2 分支提交到远程,以后就可以使用 feature-2 分支开发了
按钮作用:
左上红框是,我修改的分支(这里可以任选一个分支),右下切换到我需要提交代码的测试分支
蓝框:Cherry-Pick(樱桃按钮)-----把Dev的某次提交,commit到当前test的本地缓冲区,然后push到远程test就可以只把Dev某次的提交,更新到test
合并某个分支的全部提交
1、将dev上的代码push到远端dev上。
2、切换分支到test分支。(就是切换到将要合并的目标分支)
3、拉取代码,确保test分支为远端最新的代码。
4、合并分支
5、有冲突,先解决冲突后再合并,没有冲突则合并成功。
6、push代码到远端test分支上去。
将多次Commit合并成一个
我们在开发一个功能的过程中,可能会在本地分支上多次提交,那就会产生多次提交的记录,比较零碎,那么有没有什么办法把多次提交合并成一次呢
1、这是git本地分支的4次提交记录,现在希望合并成一条提交记录
2、先选中最早的那条记录,右击选择Interactivity Rebase from Here...
3、把除了第一条记录的Action改成squash,点击Start Rebasing
pick:保留该commit(缩写:p)
reword:保留该commit,但我需要修改该commit的注释(缩写:r)
edit:保留该commit, 但我要停下来修改该提交(不仅仅修改注释)(缩写:e)
squash:将该commit和前一个commit合并(缩写:s)
fixup:将该commit和前一个commit合并,但我不要保留该提交的注释信息(缩写:f)
exec:执行shell命令(缩写:x)
drop:我要丢弃该commit(缩写:d)
4、修改提交的日志,点击Continue Rebasing
5、可以看到日志就剩一条了,这时候就完成了多次Commit的合并
版权归原作者 也曾眼眸有光 所有, 如有侵权,请联系我们删除。