git的分支管理很基础,但是也很常用,需要规范起来,最近在组内做一期简单的git常用操作分享,这里做个笔记
分支合并
场景:test分支测试完毕之后,需要合并到master分支做发布;
方法一:web管理界面做合并请求,适用于无分支代码无冲突情况;
1.发起合并请求
2.选择合并分支
3.提交合并申请
4.审批合并请求
方法二:idea操作合并,适用于代码有冲突,需要处理;
1.本地切换到master分支
2.拉取远程master和test分支代码合并到本地的master分支上,有冲突的需要处理下冲突
3.本地master分支代码push到远程master分支代码(如果master是保护分支,当前用户没有权限push,则可以push到其他分支,然后再走方式1的提交分支合并请求)
新建分支
场景:上线之后发现新的bug需要修复,则以master分支为基础上新建一个分支做代码修改,完了之后再合并到master分支上做发布
方法一:web管理界面新建远程分支,idea拉取到本地;
1.基于master分支新建分支;
2.本地切换到远程新分支;
方法二:直接在idea上新建分支;
1.本地分支切换到master分支,拉取远程master分支代码,将本地master分支代码更新到最新;
2.新建分支;
3.push新分支到远程地址;
代码暂存
场景:需求1的代码写到一半,要优先去写新的需求2的代码,可以将代码暂存本地,先开发新的需求2代码,需求2的代码完了之后,从暂存中恢复之前的代码继续编写需求1;
方法:
1.新建代码暂存;
2.新的需求写完了,需要恢复之前的代码继续编码;
代码回退到某个时间点
场景:某个分支提交的代码,发现有问题,需要回退到之前的版本;
方法:
1.Reset操作,可将代码做回退到某一时间点,若本地回退错了,可重新拉取远程分支的代码恢复即可;
代码回退其中的某次提交
场景:某个分支代码,临时要上线,但是需要回退其中一些未测试或未开发完的代码,待后面需要时候再继续恢复继续编码;
方法:
1.Recert操作,反向提交,即对修改的代码做反向提交恢复,若后面想恢复之前的内容,可再次反向提交即可;
原理:之前的<提交1>,是将文件内容 1 修改为 2,反向<提交2>,是将文件内容 2 恢复为提交前的 1;想恢复之前的内容:则将<提交2>再做反向提交则就将内容恢复为 2
查看具体的代码提交人
场景:需要查看某行代码是由谁提交的;
方法:
分支文件对比
场景:对比下 a.java 文件和 其他分支上文件的区别;
方法:
查看文件提交历史
场景:查看文件提交历史;
方法: