项目管理离不开版本控制,目前主流版本控制工具大概就是SVN和Git,至于两者有啥区别这里就不详细介绍了,如果有不明白的可以上网查资料,后期如果有机会我再开篇栏目细说,而且现在市场上Git的使用率已经远远高于SVN。我们在用IDEA开发项目的时候如何熟练使用Git来控制代码版本呢?

一、安装Git

使用Git当然需要先安装Git,安装过程就不详细说明了,按装好之后,打开IDEA进入设置界面(可以直接点击工具栏上的,也可以通过快捷键 Ctrl + Alt + S ),搜索git,界面如下:

我们可以看到Git是在Version Control选项卡里,里面还有个GitHub,你可以在里面配置自己GitHub的账号和密码,然后可以直接将GitHub上的代码拉下来。更多内容可以参考前几期关于Settings的文章。

继续说Git,Path to Git executable就是我们的本地Git安装路径中bin目录下的git.exe,路由完路径后点击Test按钮,如果正确安装且路径正确,那么会弹出如下对话框,表示配置成功:

二、远程拉取Git库代码

我们经常会将公司Git库或GitHub上的代码拉取到本地来开发,我们在IDEA中如何拉取呢?其实有两种方式可以达到我们的目标,我们以GitHub为例:

1.先通过git工具将代码拉取到本地,然后再通过IDEA打开。

复制路径

克隆到本地

lq@DESKTOP-BHJ6UD2 MINGW64 /e/mygit/ (master)
$ git init
Reinitialized existing Git repository in E:/mygit//.git/ lq@DESKTOP-BHJ6UD2 MINGW64 /e/mygit/ (master)
$ git clone https://github.com/noobgod/designPattern.git
Cloning into 'designPattern'...
remote: Counting objects: , done.
remote: Total (delta ), reused (delta ), pack-reused
Unpacking objects: % (/), done.

拉取成功,路径在本地E:/mygit/20180226,在IDEA中open该路径下的项目,按步骤操作即可。

2.直接通过IDEA将代码拉取下来,推荐这种,因为方便快捷。

按照上图方式选择之后,里面有多个可选项,我们选择Git,会弹出一个对话框,点击Clone按钮即可。

三、更新(update)

我们在提交代码前最好先更新下远程仓库的代码到本地仓库,这样可以减少不必要的冲突,更新update可以直接通过快捷键 Ctrl + T ,也可以通过工具栏上按键来实现,分别是update,commit,compare with the same respository version。这里我们选择update。

当然也可以右键项目-->选择Git-->Respository-->pull来实现。

四、提交代码(commit and push)

我们在IDEA中开发好自己的代码之后如何提交到远程仓库呢?右键项目-->选择Git

1.Commit Directory:commit代码(将stage区的暂存文件提交到当前分支的本地仓库,并清空stage区),也可以push代码(把本地仓库的文件同步到远程仓库)。

在IDEA中,我们会看到文件被标识着不同颜色:红色,绿色,蓝色。它们分别代表什么意思呢?

红色:未被版本控制的文件,即未添加到版本控制的文件,例如我们添加到ignore中的文件。

绿色:新加入版本的文件,即我们新创建的文件,还未提交到远程仓库。

蓝色:修改过的文件,即远程仓库中已有该文件,我们这次对它进行了修改,但是还未提交。

Commit对应Git的Commit命令,有时候我们只希望commit到本地仓库暂时还不想push则可以通过此方法。如果commit完之后我们还需要push到远程仓库,这时候需要我们再右键项目-->选择Git-->Respository-->push。

想实现单纯的commit功能,我们还可以通过快捷键 Ctrl + K ,亦或通过工具栏按钮。

Commit and Push也就是Commit和push,我们可以直接在这里commit到本地仓库之后,再push到远程仓库。

2.Add:把本地文件从工作目录添加到本地仓库的stage区,对应Git的Add命令。

3.Compare with Branch…:与远程分支比较。我们提交前可以通过此功能比较下我们工作目录中代码和远程分支代码的异同。

4.Show History:查看历史修改版本记录。

5.Revert:回滚,会将你的本地修改回滚。

6.Repository:各种仓库命令。

五、合并(Merge)

在开发中难免会遇到多人修改同一个文件,造成版本冲突,这时候如果需要程序正常运行并且确保功能完整就需要开发人员手动解决这些冲突,并将代码合并,得到最终一致性的代码最后再push到远程。

而这一块往往对很多人来说是最头疼的,操作不当可能会造成代码紊乱造成事故,其实理解了原理,熟练之后其实也没那么复杂。

这里需要介绍的内容蛮多而且需要细说, 如果关心这块的话可以关注下,后续不定期的更新添加和补充完善。

六、分支管理

分支管理我们就需要用到IDEA底部的状态栏了。

在这里我们可以切换分支,新建分支,checkout分支代码,compare分支代码等等。

IntelliJ IDEA(八) :git的使用的更多相关文章

  1. IntelliJ IDEA 使用Git怎样记住密码和忘记密码的方法

    IntelliJ IDEA 使用Git怎样记住密码的方法 1.当使用Ctrl+T进行更新时,弹出密码框(此时不要输入任何字符),直接点"Cancel" 2.略等二三秒,会弹出新的密 ...

  2. Intellij 中的git操作 转!

    http://blog.csdn.net/lovesummerforever/article/details/50032937 Git原理以后会分章节介绍,本次主要说一下intellij怎样操作git ...

  3. Eclipse / Intellij Idea配置Git+Maven+Jetty开发环境

    作者:鹿丸不会多项式 出处:http://www.cnblogs.com/hechao123  转载请先与我联系. 最近公司给加配了Mac,本想着花一个小时的时间搭好开发环境,最后全部弄好却用了一上午 ...

  4. Intellij IDEA创建git,maven的SpringMVC项目

    Intellij IDEA创建git,maven的SpringMVC项目 原文链接:http://www.cnblogs.com/blog5277/p/8906120.html 原文作者:博客园--曲 ...

  5. GIT → 10:基于IntelliJ IDEA的Git 操作

    GIT → 10:基于IntelliJ IDEA的Git 操作

  6. IntelliJ IDEA下Git的配置与使用(命令行下)

    1. 安装Git并配置好Git 安装与配置参见Git与码云(Git@OSC)入门-如何在实验室和宿舍同步你的代码(1)中的2.在本机安装Git与3.1 配置git. 2. 创建远程仓库 在gitee. ...

  7. intellij中使用git插件将项目上传到码云

    参考帖子: git上传本地Intellij idea 项目到码云的git仓库中(评论中有彩蛋,一定要看) IntelliJ-IDEA和Git.GitHub.Gitlab的使用 使用idea上传项目到码 ...

  8. intellij idea之git执行打标签(tag)和删除标签

    intellij idea 版本为2017.2.6 进入Version Control-->log 1.在之前版本中,右键,新建标签 2.输入标签名称,建议输入版本号的方式 3.push标签 由 ...

  9. intellij idea从git检出代码并建立工程

    1. 打开intellij idea,点击configure,settings 2. 左侧展开Version Control,点击Git,点击下图中红框中按钮 3. 在弹出窗口中找到git.exe,点 ...

  10. IntelliJ IDEA 创建 Git 分支并且 Push 到远程

    在 IntelliJ 的右下角,你可以看到当前的 Git 分支,然后你可以单击这个分支后,在弹出的界面的最上方有一个新建分支的选项. 然后再弹出的界面中,输入你要创建的分支名称后回车输入. 然后从项目 ...

随机推荐

  1. Mysql执行计划说明

    Mysql执行计划翻译: 官网原文请见http://dev.mysql.com/doc/refman/5.6/en/explain-output.html:5.6 EXPLAIN语句提供有关SELEC ...

  2. hash类型

    redis的hash是一个string的key与value的映射表.适合存储对象,与string的类型相比,可以节省内存,并且方便获取整个对象 hset  设置hash field的指定值.不存在则先 ...

  3. Redis-配置认证密码

    1.找到redis.conf,配置密码 2.要重新启动一下redis 3.用redis-cli重新登陆,我们查询的时候提示"Authentication required"查询失败 ...

  4. springboot之fastjson

    <dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</artifac ...

  5. glReadPixel 读取数据错误问题

    glReadPixel 读取数据错误问题 问题:在Android上使用 glReadPixel 读取当前渲染数据,在若干机型(华为P9以及魅族某魅蓝手机)上读取数据失败,glGetError() 没有 ...

  6. Web Magic设计思想

    1.1 设计思想 1. 一个框架,一个领域 一个好的框架必然凝聚了领域知识.WebMagic的设计参考了业界最优秀的爬虫Scrapy,而实现则应用了HttpClient.Jsoup等Java世界最成熟 ...

  7. There were X failed login attempts since the last successful login

    如题,开始玩Linux的人,每次登陆的时候,肯定会遇到这个提示,好担心系统被人攻破,那怎么把这些试探的IP抓出来,并屏蔽呢,今天就记录一下我的做法,供大家参考 其实这个问题已经在系统级别支持解决,目前 ...

  8. js/j'query相互转换操作指南

    // jquery对象转js对象 $('#search')[0].checked=true; // js对象转jquery对象 var obj = document.getElementById('s ...

  9. JAVA中获取文件MD5值的四种方法

    JAVA中获取文件MD5值的四种方法其实都很类似,因为核心都是通过JAVA自带的MessageDigest类来实现.获取文件MD5值主要分为三个步骤,第一步获取文件的byte信息,第二步通过Messa ...

  10. CU社区shell板块awk十三问整理

    CU社区shell板块awk十三问整理 一.RS="" 当 RS="" 时,会将\n强制加入到FS变量中,因为RS为空时,是将连续多空行作为分隔符,近似于\n\ ...