git原理以后会分章节介绍,本次主要说一下intellij怎样操作git。intellij有很好的git操作界面,可以拉取代码,拉取分支详情,提交代码到本地仓库,提交代码到远程仓库,可以merge本地分支,merge远程分支,可以自由的切换分支,可以解决merge带来的冲突问题。总之可以完成基本的git操作,详情如下。

1、 更新代码

ctrl+T,更新的是远程仓库的代码。(ps:默认更新选择的是branch default 和using stash,可以研究一下其他的选项哦)

       2、提交代码

ctrl+K,如果本地代码没有改变,会提示,no changes detected(检测到没有改变)。如果本地代码有改变,则可以进行提交,对于git提交,首先是提交到本地仓库(commit),然后再提交(push)到远程仓库中,和svn比起来,相当于加上一层“缓存”,同时加上一层安全。如下图所示,还有一些其他的细节,一些按钮,可以探究一下哦。

  3、两个分支的之间的切换

intellij的右下角有git相关的信息,如下图所示。

Git:xhf_buanch_test代表的是当前分支,一般情况下我们的当前分之是master。Local Branches:表示本地仓库中的分支,本地的分支都是从Remote Branches中checkout而来的,选择想要下载的远程分支,右键选择check out as new local branch,然后选择ok,在Local Branches中就会增加一个本地分支。

但是分支之间怎么切换呢,提交代码的时候提交到的是哪个分支呢?

当前分支是什么默认提交到的就是哪个分支,所以想要修改哪个分支,就切换到本地的哪个分支,但是在分支切换的时候会出现一些问题,为了避免这些问题的出现,最好保证如下点。

3.1切换之前ctrl+k,确保没有未提交到本地仓库的文件

3.2切换之前先更新,把这个分支更新为最新的code。

然后选择Local Branches中的分支切换为当前分支。可能会出现如下问题,比如分支A_1和分支A_2 两个分支,当A_1中添加了一些文件,但是还没有commit的时候,这时候切换分支到A_2 , A_2中也会有A_1中未提交的文件。

当有时候会出现从A_1分支切换到A_2分支上,需要merge,我们可以选择smart merge,当smart merge没有解决问题的时候,我们可以手动merge,merge result的结果,就是把这些文件放到你要切换到的分支上,所以最安全的方式是选择Merge这个按钮。

accept Yours是接受A_1分支上的改变,Accept Theirs是接受A_2分支的改变。

4、新建分支

点击git框的new Branch,然后输入自己分支的名称,按照本公司的分支命名规则哦。然后会自动切换到当前分支,然后再push到远程仓库中。

5、同步远程分支

可能有人新建了远程分支,但是在本地上的Remote Branches中并没有远程分支,所以需要右键选择git fetch。

 6、merge远程分支。

A merge B是把A中的改动放到B分支上,B merge A是把B中的改动merge到A中,例如把master分支上的改动移到分支fb_xhf上,可以这样merge。

6.1 转到master分支上,然后更新master最新更新。

6.2 再转到fb_xhf上,然后在Local Branches中选择master分支,选择merge,这样就把本地的master merge到 本地仓库的fb_xhf上,然后再选择git push ,这样就把远程master merge到 fb_xhf上, 并会提示: Merged master to fb_xhf。

7、文件恢复

本地的文件修改后,想要恢复到本地git仓库上次的提交,可以右键选择git revert。

 8、 cherry pick

就像摘樱桃一样,在changes列表中,可以看到其他分支提交的动态,如果想要把某次的变化放到当前分支上,可以右键选择cherry pick,这就是摘樱桃。

9、如果不小心不应该merge的时候merge了,怎样退回到上一次状态?

在changes中选中最新的提交,然后右键选择reset current branch to here。。然后弹框如下

选择Hard会返回上一状态,其他的选项,可以看看哦。

10、颜色变化

git 在未add到git管理的时候是褐色,add后的颜色是绿色,提交之后的颜色是正常色,有修改之后的颜色是蓝色。

  11、如何删除某些已经提交到本地git仓库和远程仓库上的内容呢?

可以使用git命令:

        11.1  git rm -r --cached    File-or-FolderName    (ps:要删除的文件或目录, 本地git库缓存的文件.)
      11.2   git commit -m  "Removed folder from repository"  (ps:提交到本地)
      11.3  git push origin master (ps: 把删除提交到远程分支上.)

在intellij中可以在执行完第一个步骤之后ctrl+K commit和push。

  12、intellij去除非代码提交

  修改 。gitignore文件,并提交到git上。如下修改

         /target
              /.idea
              *.iml
              *.ipr
              *.iws
              .idea
              */*.log
              */target/
              *.DS_Store
              *.classpath
              *.settings
              *.project

       扩展:git http://my.oschina.net/pengfeix/blog/191897?p=1#OSC_h3_3  http://www.51itong.net/git-commit-amend-commit-8551.html

       ps:如果测试的话,可以在github上测试,这样就省去了本地安装git服务端。

      13.Git新建本地分支与远程分支关联问题:git branch --set-upstream

git本地新建一个分支后,必须要做远程分支关联。如果没有关联, git 会在下面的操作中提示你显示的添加关联。关联目的是如果在本地分支下操作: git pull, git push,不需要指定在命令行指定远程的分支. 推送到远程分支后, 你只要没有显示指定,git pull 的时候,就会提示你。

解决方法:

使用命令git branch --set-upstream ;实例如下,其中debug为创建的分支

git branch --set-upstream debug origin/debug

命令的最终修改都是针对 config 文件。

使用-- set-upstream 去跟踪远程分支。

[core]repositoryformatversion = 0filemode = truebare = truelogallrefupdates = true
[remote "origin"]fetch = +refs/heads/*:refs/remotes/origin/*url = git@192.168.1.160:android2.3.5_r1.git
[branch "master"]remote = originmerge = refs/heads/master[branch "debug"]remote = originmerge = refs/heads/debug[receive]
denyCurrentBranch = ignore

注意仓库.git目录下的config文件

intellidea中GIT操作相关推荐

  1. IDEA中Git操作

    前提是安装并配置了git,可以使用git init等命令 一.创建git项目 1.直接从github.gitlab等网址导入项目 选择new->输入你的git url地址,直接拉取代码 2.自创 ...

  2. 工作中git 操作汇总

    1. git branch -l  查看本地branch 2. git reset --hard 回滚全部修改 3. git status  查看本地修改 4. git pull 更新代码 5. gi ...

  3. gitlab git clone 卡住_IDEA中的Git操作你掌握了吗?此一篇,足矣!

    Hello,大家好,我是Jerry.最近在公司上班,将公司Gitlab中的项目clone到本地,开发完成之后,需要进行代码提交,刚开始真是"丈二和尚摸不着头脑".但是经过一段时间的 ...

  4. Intellij 中的git操作 转!

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

  5. eclipse git 取远程代码_IDEA中的Git操作,看这一篇就够了!

    大家在使用Git时,都会选择一种Git客户端,在IDEA中内置了这种客户端,可以让你不需要使用Git命令就可以方便地进行操作,本文将讲述IDEA中的一些常用Git操作. SpringBoot实战电商项 ...

  6. Idea 中的 Git 操作看这一篇就够了(最全的讲解,文章比较长,截图比较多是为了说明问题)

    环境部分略过 从0开始创建一个项目,用来讲解git,会包括创建远程新分支,回滚等操作. 在每一个讲解过程中都会有问题提问 基础部分讲解 实战高级部分 基础部分内容 如果在github上已有仓库    ...

  7. Idea中git进行回滚版本操作和查看修改记录

    Idea中git进行回滚版本操作 开发过程中:在进行代码提交后,总会出现一些错误和没有完善的地方,需要进行回滚修改,搜索后还是有多种方法的,自己记录一下用的比较多的方式吧: 1.项目右键后,然后在&q ...

  8. Git操作详解以及在VScode中的使用

    我们先理清Git和Github的区别,Git是个版本控制的工具,用来管理本地的代码工程,它可以记录代码内容的变更:而Github是一个代码托管平台,我们可以使用Git将本地代码上传到Github. 那 ...

  9. IEDA中的Git操作

    工作中经常遇到的git操作,常见的应用场景 注意:在操作主干分支和测试分支时要多Pull更新代码,避免代码冲突. 场景一:小贺入职了一家公司,要拿到项目代码. Clone 首先在git里复制项目的SS ...

最新文章

  1. 工具坐标6点法_轻松学机器人系列之各坐标系关系
  2. mysql.connector写了一个简单的mysql操作类:
  3. 基于CDN边缘网络智能优化图片和视频
  4. 如何用记事本编写运行java程序?
  5. SQL68 牛客每个人最近的登录日期(三)
  6. ++i i++
  7. 本地安装易邮邮箱服务器并用foxmail 连接测试
  8. JMeter下载安装
  9. “颠覆”——物联网 + 大数据 + 云计算+ 网络互连
  10. 163邮箱邮件被退回,什么企业邮箱可以接收国外邮件?
  11. Instrument初识
  12. linux调整tmp目录,linux – 如何将默认/ tmp更改为/ home / user / tmp
  13. 开机后, 小键盘的灯不亮的解决方法
  14. LTE PWS CMAS CBS消息
  15. 华为发生工商变更,瞄准5G车联网大蛋糕!(附产业重要数据下载)
  16. 端午节假期----心情记录
  17. 少儿Python编程2-计算机和信息处理
  18. html $符号的作用,javascript 中$符号是代表什么意思!
  19. 最新草莓CDMS原创内容分销系统/微信小说平台系统1.0版
  20. C_char*、char[]、中文字符

热门文章

  1. 永磁同步电机PMSM,异步电机仿真矢量控制
  2. 基于Linux系统搭建智能DNS
  3. 安装Ubuntu Linux操作系统
  4. 两分钟带你彻底明白机器学习中的过采样和欠采样是什么意思?
  5. Adobe Premiere Pro 2020 入门教程(二)新建项目和软件界面的介绍
  6. 纯千兆电口模块和自适应电口模块的区别
  7. java.lang.IllegalArgumentException(求解决)
  8. 智慧天下:专业版和绿色版有什么区别?
  9. 【赛氪 Saikr】不正方形(数学、平面几何 ps:今天打了假赛)
  10. 微信查询天气公众账号小记