一、Git

1、Git下载(Win)

1、官网:https://git-scm.com/download/win;这个可能会有点慢;

2、淘宝镜像:http://npm.taobao.org/mirrors/git-for-windows/。

2、Git安装

可以直接一路next.

3、项目克隆


二、IDEA

1、配置git

2、使用

(请先看文档,再实际操作)

企业项目在git代码托管中心一般会有多个分支(常见:master(主分支)、develop(开发分支)、release(测试分支))

1、克隆代码

从码云(3个分支)上获取的代码,在本地仓库只会默认新建master分支,并且指向远程仓库的master

2、新建分支

为了与主分支代码区分开来,在本地新建一个develop分支,后续的所有开发,都在本地develop上进行,并且提交到远程的develop分支。切记提交远程分支时需要注意,本地的分支与远程分支的对应关系一定要弄清楚,不然一旦提交,初始接触git回滚会比较麻烦,不要问我为什么会清楚。。。

2.1、新建本地分支

可以看到IDEA当前本地分支已经变为了develop,如果新建分支名称时未勾选“签出分支”,则本地分支还是master。

可以看到已新建本地develop分支,但它并没有与远程分支相关联

2.2、更新本地代码

2.3、关联远程分支

提示无法更新,需要远程分支

此时可以看到本地develop分支已与远程develop相关联

上述2.1、2.2、2.3步骤可以融合为下面一步(上面说了要先看文档,再实际操作吧,就当加深操作记忆啦)

3、切换分支

默认是master分支

选择要切换的分支,点击checkout(签出)即可切换成对应分支

4、代码拉取(Pull)


1、正常拉取

A、工具栏

该功能只能拉取与本地分支关联的远程分支,及远程develop

B、项目右键

2、冲突解决

GIT如果本地有文件改动未提交,且该文件和服务器最新版本有冲突,pull更新时会提示错误,无法更新。

A、工具栏




本地代码还待提交到远程

B、项目右键

直接拉取会失败,这种拉取会直接覆盖本地代码,IDEA无法承担这种损失,需要手动处理
解决方式一:将本地代码commit到本地仓库,然后再进行拉取

会出现冲突解决弹框,冲突解决后IDEA会自动提交到本地仓库,只需要提交到远程分支即可。
但是这种push到远程分支会出现一些讨人厌的冲突解决信息,虽然不影响功能,但对提交日志来说很烦。

方案二
拉取远程分支




冲突解决后,IDEA不会自动提交到本地仓库,需要自己进行提交,然后再远程推送。

方案三:添加拉取参数,其效果与工具栏的拉取一致

5、推送远程(Push)

在往远程分支推送时一定要要保持本地代码与远程代码的版本是一致的,即需要在push前pull(解决掉冲突,推送基本一步到位,不太会出现问题)。顺序:先pull、再commit、最后push。
commit分为受git管控的文件,与不受git管控的文件,按实际需要进行文件选择。
push是可以选择远程分支的,最好本地是哪个分支,就推送到远程哪个分支。

项目右键commit、push,效果与工具栏commit、push一致。

三、高级使用

1、IDEA不想push所有commit

1、撤销提交(undo commit)

找到本地分支的日志记录,找到最新提交记录,右键进行撤销提交。这种方法只能撤销最新的提交记录,其余的提交记录是灰色,不能执行,需要多次执行。

再次推送,即少了一条提交记录

2、重置HEAD

该方法是指将本地分支重置到某一具体版本
指定重置提交,根据本地提交日志,从上往下以0、1、2、3…依次编号,假设要重置到测试2即:HEAD~1,测试3就会取消提交,如果重置到HEAD~2,就会取消测试2,测试3的提交

关于重置类型:

–mixed

意思是:不删除工作空间改动代码,撤销commit 和 撤销git add . 操作,回退到工作区;

–soft

意思是:不删除工作空间改动代码,撤销commit,不撤销git add . 操作;

–hard

意思是:删除本地改动代码,撤销commit,撤销git add . 慎用。
另一种重置途径:

在推送时已经没有提交信息

2、忽略git管控文件

安装ignore插件
新建git忽略文件

3、合并本地分支

目标:将本地hot-fix分支合并到本地develop分支

IDEA选择的分支一定是develop分支,

选择需要合并的分支即hot-fix进行合并

合并后可删除hot-fix分支,不然在hot-fix分支上的修改后续会自动合并到develop分支。

IDEA使用Git大全相关推荐

  1. IDEA 使用Git图文详解(学好idea操作git大全)

    一.配置git 二,项目到远程仓库 新建本地仓库 将需要上传的文件项目右击,git    ===    add 添加到git仓库,文件名为绿色 然后commit项目,提交项目,这里是先提交带本地仓库 ...

  2. Git最新版从零开始详细教程(迅速搞定~)

    目录 1.版本控制 1.1.什么是版本控制? 1.2.版本控制的作用 1.3.版本控制的内容 1.4.常见的版本控制工具 1.5.版本控制的三大类 1.5.1.本地版本控制 1.5.2.集中版本控制 ...

  3. 2022/4/5 Git从入门到精通(精简版)

    目录 1.Git简介 1.1Git的特点 1.2Git 与 SVN 区别 1.3Git的缺点 2.安装Git 2.1下载Git 2.2下载后安装 2.3创建项目 2.4创建仓库 2.5配置Git 3. ...

  4. Git连接远程仓库(私有/公开仓库),克隆代码

    Git连接远程仓库(私有/公开仓库),克隆代码 1.下载安装Git: git官网下载地址: https://git-scm.com/download/win 但是 ,git官网的话,下载速度比较慢,可 ...

  5. 向git服务器添加shh公钥

    2019独角兽企业重金招聘Python工程师标准>>> git大全: https://git-scm.com/book/zh/v2/%E6%9C%8D%E5%8A%A1%E5%99% ...

  6. 30分钟带你精通Git使用

    一. 版本控制工具 1.1. 什么是版本控制系统? 版本控制系统(Version Control System):是一种记录一个或若干文件内容变化,以便将来查阅特定版本修订情况的系统.版本控制系统不仅 ...

  7. Git教程---Windows安装及命令使用(详细例子)

    目录 一 Git的工作原理 二 Git下载及安装 三 Git配置 四 Git命令(示例) 参考链接: 一 Git的工作原理 Git有四个工作区域,其中三个工作区域工作在本地,一个工作区域工作在远程仓库 ...

  8. 【阿里内部教程】python初阶:基础语法 python全栈自动化测试系类

    目录 很多小伙伴可能都没有看过凡哥的视频,所以大家可能对凡哥不是很了解这里先和大家来个自我介绍 凡哥我已经有着十二年互联网自动化测试和测试开发工程师,拥有丰富的自动化测试平台及测试开发经验,擅长接口测 ...

  9. 狂神说-Springcloud笔记

    一.微服务 1.1.微服务架构4个核心问题 服务很多,客户端怎么访问? 这么多服务,服务之间如何通信? 这么多服务,如何治理? 服务挂了怎么办? 1.2.核心问题解决方案 springcloud就是一 ...

  10. C++开发工程师学习路线

    通用 Linux git或其他版本管理工具 Git大全:https://gitee.com/all-about-git 推荐教程: 码云官方的可视化分支交互教程,对新手友好: https://osch ...

最新文章

  1. 实战:从深度学习探究计算机视觉
  2. Spring 注解之@RestController与@Controller的区别
  3. (转)响应式Web设计是大势所趋还是时代的产物
  4. dataBinding和retrofit的使用
  5. twisted系列教程十五–测试twisted代码
  6. 那个高产似母猪的复旦计算机硕士
  7. 《WINDOWS游戏编程之从零开始》第四章学习笔记
  8. java proguard 反混淆_JAVA之代码混淆proguard
  9. android电视工程模式,智能电视进入工厂/工程模式教程汇总!
  10. 多台显示器图像拼接组成大屏幕是怎么实现的?
  11. UI设计师都用什么工具?
  12. 2020年机修钳工(初级)报名考试及机修钳工(初级)模拟试题
  13. 【心励路程】----凡事多换位思考
  14. Jump gameII
  15. 仿xp画板、画图重绘、五子棋总结
  16. Linux基本的常用命令
  17. 如何在踩踏事故中幸存以及如何避免踩踏事故发生
  18. 十秒内黑掉Fitbit智能手环(附视频)
  19. 一个艰难的决定。。。搬家了~
  20. Python C/S 网络编程(三)之 TCP 实现远程骰宝游戏

热门文章

  1. 防火墙和代理服务器之间有什么区别
  2. html embed如何禁止自动播放,html embed用法
  3. dyndns免费动态域名
  4. 甘超波:NLP如何挖掘信念
  5. gsyVideoPlayer直播短视频回放,集成腾讯播放器(2)
  6. java连接wamp_eclipse php wamp配置教程
  7. 笔记本计算机无法上无线网络,告诉你解决笔记本电脑连不上无线网络
  8. tumblr_向您的Tumblr博客添加高级主题
  9. hiveserver2连接报错:“User: xxx is not allowed to impersonate yyy (state=08S01,code=0)”
  10. Windows批处理命令:start、call 的区别