idea中使用git操作介绍

6 篇文章 0 订阅

git的简单介绍

这里我只简单介绍一下,详细git学习建议看廖雪峰的git教学
首先git分为这几个区

  • Workspace:工作区
  • Index / Stage:暂存区
  • Repository:仓库区(或本地仓库)
  • Remote:远程仓库

还有有一个分支的概念。
在这里插入图片描述

一个工作流程

假设你领导安排一个工作给你,我们基于多分支开发,那么步骤如下:

  1. clone项目到你的idea上的
  2. 在本地master建立一条分支
  3. 把本地分支push到远端
  4. 然后进行开发
  5. 最后开发完成把分支发布到日常环境
  6. 日常完成把分支发布到预发环境
  7. 预发测试完成,发布到线上环境
  8. 线上都验证通过,把分支合并到master上

这样一个开发的流程就结束了。

补充

步骤1:一般来说只有刚拿到项目的时候才需要clone,别的时候都是直接从第2步开始的
步骤2,3:一般来说。大型公司会有自己的运维体系,分支的创建可能就不是本地创建然后push到远端了。那么就是通过运维系统自动创建好对应的分支,然后先在本地fetch跟新本地仓库的分支,然后checkout分支名字,这样你的本地就有这个需要开发发布的分支了

idea中使用git

基本操作

Ctrl+T :pull拉取代码
Ctrl+K:commit提交到本地仓库
Shift+Ctrl+T:push分支本地仓库内容到远程仓库

如何merge代码

假设之前的那一套开发流程都开发完成了。你准备把你的分支发布到线上了,但是有同事的分支比你先发布了。这个时候你就需要在你的分支上先merge更新之后的master,再重新发布你的分支到线上即可。因为你同事先发布到master上的内容可能会有冲突,所以需要先merge再发布
操作步骤:

  1. 先把分支切到你的开发分支
  2. 右击项目->git->repository->merge change
  3. 然后选择master代码即可

冲突解决

我举例我使用的运维体系,一般来说日常环境只有一个,那么如果有多个人在开发的时候,如果一起发布到日常,那么就有概率发生代码冲突,这个时候就要解决冲突了。原理就是你在master拉出一条日常分支daily,然后依次把A,B,C3条需要发布到日常的分支合并到这个分支daily上,然后在顺便解决冲突即可。操作步骤同理上面的merge代码

jar包冲突解决

当开发微服务项目的时候例如需要项目A给项目B提供接口的jar包,这个时候如果你开发分支C提供接口C1,你的一个同事开发分支D提供了D1接口,那么如果你先打包,那么势必B项目没有了你同事的D1接口,所以就会发生构建失败这种问题,这个时候就要把C,D2个分支都发布到日常,然后一起打包,那么你们的B项目就可以获得C1,D1 这2个接口,就不会再构建错误了

上线前的准备

一般上线前我都会和master对比一下代码,也算是自己code一下自己的代码究竟写了啥。也看看有没有什么问题。或者你想看看这个代码的提交记录,看看前辈们是怎么更新了这个代码
右击项目->git->compare with barch
进行代码对比,然后注意选择忽视空格和换行这种
可以在中间栏右击annotate查看历史记录等等

灵活使用暂存区

有的时候我们会同时开发2条分支,假设你在A分支写了一些东西,但是还不想提交,但是这个时候你要改B分支的东西的时候,就可以先把这些没开发好的代码暂存起来,切到B分支后进行修改提交后再切回到A分支,再把你暂存的东西拿下来继续开发
右击项目->git->repository->stash change
暂存代码
右击项目->git->repository->Unstash change
取回diamagnetic

代码回退

假设你已经开发完了版本1.0,这个时候还升级到了2.0,都已经提交完了本地分支到远程了,产品过了3天和你说不行,我们要回退要1.0版本,你之前白开发了,这个时候该怎么做。
右击项目->git->show history
查看需要回退的版本号
右击项目->git->repository->rest HEAD
注意选择的类型可以是mix,和soft,如果是head的话你的代码就全没了,如果你确定需要这么做的话也可以。假设是mix的状态,这个时候代码会恢复到未提交的状态,然后你用上面的暂存,最后暂存好之后这次提交就没了,然后再强制提交一下代码,让远程分支也会退代码即可
命令行区输入:git push origin HEAD --force
注意这个要强制提交。算是个风险操作。进行的时候一定要小心再小心。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值