有关于git的使用(不常用的常用篇)

git 在大家的工作中已经是比较常用了,我就之前实习的时候使用,现在应该也就一些比较传统的企业使用。
自己对于git的了解不多,之前的工作也就停留在 commit,push,merge,revert这几种操作的使用当中,感觉使用的场景十分有限,其实现在的场景存在很多操作需求,我们不可能遇到问题就立马revert,有些需要保存代码的情况,不能完全merge的情况。虽然这个相对频率较低,但还是要熟练,因为这个时候都是上线前或上线的常用操作,需要流畅这些操作,避免不必要的麻烦。
接下来,我就分享几个简单场景的常规操作。
在这之前我介绍一下我分享的环境。
在这里插入图片描述本人这里使用的是idea,语言用的是java,ide整合git来弄,这个是我比较常用的场景,可能大家用的语言,工具不一样,但使用都是一样的。
下面开始列举:
一、当自己的分支和同事的分支都合入要发布的分支时,发现自己的东西是有问题的,需要撤回。
这是在这里插入图片描述在这里插入图片描述这边我将两个分支都合到master上来了,接下来要只保存test2那个分支
接下来的操作有点复杂了,不知道自己做的对不对,我感觉应该是对的,这里要用到reset操作
在这里插入图片描述选择一个分支reset,然后会发现
在这里插入图片描述代码都变成未提交状态,因为代码已经合并,所以需要全部撤回,这里可以用revert将整个项目回到这个提交版本,然后不能直接push,会提示你现在版本比较老,还是会变成原来那样,这里需要强制提交
git push -f remote master,这个操作不能Idea做,反正我现在是没有找到。
在这里插入图片描述这个时候,idea代码还是老样子,要pull一下
在这里插入图片描述变成原样了,然后再合入需要的分支
在这里插入图片描述这样就把你自己的代码回撤了。
二、我在开发的分支中有个功能是要紧急上线的,或者说有个分支提交了一个功能,其他分支需要共享一下,但只是共享这个功能。(像我现在公司的项目就是一个分支对应一个地区的项目,比较乱,还没整合)
在这里插入图片描述在这里插入图片描述首先我在test1提交了两个commit,上下顺序是时间顺序,接下来我就要整合早一点的那个版本
在这里插入图片描述这里有两点需要注意,一个是自己这边主环境要切到要整合分支,然后对其他分支的某一个commit 进行cherry-pick,
在这里插入图片描述然后解决一下冲突,提交就行了。
这里可能会有疑问,我cherry-pick的那个提交只改动了"第四次提交"这个输出,怎么**“第二次提交”**也过来了。这是因为这是同一个文件,实在不好区分,换个两个文件之间就好说了。请看在这里插入图片描述在这里插入图片描述test1我加了一个文件,master pick这个,然后那个
test1第三次提交就没有过来。
基本上我困扰的一些常规操作就这两个。
如果有遗失可以补充给我,我也学习一下。。。自己太菜了

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值