IntelliJ IDEA 之 Git 使用

article/2025/10/22 6:51:57

文章目录

    • 1. 本地安装 Git
    • 2. IDEA 配置 Git
    • 3. 首次检出项目
    • 4. 项目分支创建
    • 5. 项目分支切换
    • 6. 项目刷新分支
    • 7. 分支代码提交
    • 8. 开发分支合并主分支代码
    • 9. 主分支合并开发分支代码
    • 10. 代码提交记录进行合并操作
    • 11. 常用操作的快捷方式
    • 12. 开发分支部分合并到主分支
    • 13. 主分支被强推的解决办法
    • 14. 移除被添加到版本管理的文件
    • 15. IntelliJ IDEA 使用 Git 慢的问题
    • 16. 本地新建项目添加 Git 管理


1. 本地安装 Git

官方下载地址
不过这个地址一般下不动,我们可以选择在腾讯软件中心下载,速度很快。
腾讯软件中心下载地址

接着就是安装了,一直点击Next即可,使用默认安装。这个页面选择git使用的命令行,建议使用第一个git自带的即可。

接着需要设置git的用户名和邮箱,这个用户名会显示在提交历史中。打开git-base.exe,这里需要执行两个命令,一般直接设置全局的即可:

--修改当前项目用户名和密码:
git config  user.name  "username"
git config  user.email  "email"
--修改完毕查看一下:
git config user.name
git config user.email
--修改全局用户名和密码:
git config --global user.name "Your Name Here"
git config --global user.email "your_email@example.com"
--修改完毕查看一下:
git config --global user.name
git config --global user.email

如果这里没进行设置,会在你第一次提交的时候提示你设置:
image.png

2. IDEA 配置 Git

使用的IDEA版本为2019.2,首先需要安装Git软件,然后在Settings选项中配置Git安装路径,点击Test进行测试。

3. 首次检出项目

首次检出需要在 IDEA 顶部工具栏选择VCS--->Checkout from Version Control--->Git

然后在URL填写上公司GitLab中目标项目远端地址,目录Directory注意填写到具体的项目名(图片上的是错的,应该是D:\IdeaProjects\udesk_cem)点击Test,接下来会提示输入用户名和密码。


填写好用户名和密码后,如果正确,会提示连接成功,接着点击克隆,将远端项目检出到本地。

这是首次检出的过程,之后的每次检出就不需要这么麻烦了,直接在IDEA右下角的分支列表进行操作即可。

4. 项目分支创建

可以在右下角的分支列表上方选择+New Breach新建分支,新建的分支是基于当前所在分支的代码的。所以在新建分支之前可以先切换到想要作为基础版本代码的分支,再进行创建分支操作。
New Branch
Create New Branch

5. 项目分支切换

可以直接在右下角的分支列表中选择需要切换的分支,直接鼠标左键点击,选择想要切换的分支。切换完毕会在右下角显示当前所处的分支名称。

(1)本地分支Local Branches的检出切换选择Checkout
本地分支切换
(2)远端分支Remote Branches的检出选择Checkout As...,新的分支名称不需要修改,默认和远端分支名称一致。点击OK即可。
远端分支检出
分支名称

6. 项目刷新分支

有时候右下角的分支列表里没有想要检出的分支,也就是说你本地显示的远端分支列表和GitLab远端分支列表不同步,这时只需要点击顶部工具栏的VCS--->Git--->Fetch(取来)进行重新拉取即可实现右下角远端分支列表的刷新。
同步分支列表

7. 分支代码提交

在开发分支上开发完毕后,可进行代码提交,先提交(Commit)到开发分支的本地仓库,再推送(Push)到开发分支的远端仓库。

首先进行Commit操作,在项目上右键--->Git--->Commit--->Directory...,可以在弹出界面查看本次提交的文件,可以添加提交信息,还可以在右下角选择提交选项。默认是Commit,也就是只提交到开发分支的本地仓库,还有一个选项是Commit And Push...表示会将Commit操作和Push操作连起来,在Commit完毕后会接着提示你进行Push操作,也就是推送到开发分支的远端仓库。

也可以在IDEA下方选项卡Version ControlLocal Changes菜单下选中要提交的文件进行Commit,也可以右键Default Changelist,选择Commit

提交
接下来进行Push操作,可以选择直接在项目上右键--->Git--->Repository--->Push。注意不要勾选弹出框左下角的Push Tags,否则会推送到所有远端分支。注意检查弹出框的左上角的远端分支名称是否正确。
Push
推送

8. 开发分支合并主分支代码

本地分支为开发分支。将主分支的代码合并到开发分支上。
在开发分支上开发完成后,需要进行测试。但是在开发期间,可能其他同事已经在主分支上提交了代码,这时就需要rebase主分支的提交内容到开发分支上。

(1)首先rebase主分支远端仓库代码到开发分支的本地仓库。注意需要在右下角的分支列表中选择远端分支的主分支仓库进行rebase,这样是为了rebase到最新的主分支内容。Rebase Current Onto Selected是将当前重设为选定的意思。
rebase 主分支
(2)如果有代码冲突,会有弹窗提示进行代码合并和冲突处理。处理完后进行再次提交,最后需要进行强推到远端,对开发分支远端仓库的提交记录进行覆盖。(这个注意一定要强推,否则提交记录会出现分叉)。
强推

9. 主分支合并开发分支代码

本地分支为主分支。将开发分支的代码合并到主分支上,最后使用主分支进行上线。

(1)首先切换本地分支为主分支,同步主分支远程仓库的最新代码到本地。
项目右键--->Git--->Repository--->Pull
Pull
(2)接下来rebase开发分支远端仓库代码到主分支本地仓库。
rebase 开发分支
(3)进行push操作,将主分支的本地仓库代码推送到主分支的远端仓库。(这里不需要使用强推)

10. 代码提交记录进行合并操作

选中需要合并的记录,右键选择Interactively Rebase from Here(交互式地从这里重新建立基地)
合并提交
除了第一个选中的开始节点选择pick外,其他节点选择squash(压缩)。
压缩
接下来写上压缩后的提交记录描述。点击Resume Rebasing(重新开始),最后把压缩完的提交记录force push到远端即可。
填写日志记录
有时合并的过程中放弃了,会显示一直处于Rebase中,这时可以直接点击右下角分支列表中的Abort Rebase,中止Rebase操作。
丢弃
操作过程示例:

目标: 对多次提交记录进行合并。

(1)比如我需要把2号提交合并到1号提交中,也就是把这两合并为一条提交记录。直接在1号提交上右键,选择Interactively Rebase from Here(交互式地从这里重新建立基地)
在这里插入图片描述
(2)接着会弹出Rebasing Commits窗口,将2号提交选为squash(压缩),点击Start Rebasing
在这里插入图片描述
(3)接这会他弹出Additional Rebase Input(重新输入描述信息)窗口,这里可以填写上压缩合并后提交记录的描述信息。点击Resume Rebasing(重新开始)
在这里插入图片描述
(4)接下来如果你压缩的是远端的提交记录,则需要进行force push(强推)到远端;如果压缩的只是本地的提交记录,则直接正常push即可。

注意,Action 有以下几种选项:

pick(选择) / edit(编辑) / skip(略过) / squash(压缩) / reword(重述) / fixup(修正)

  • pick 就是 cherry-pick。
  • reword 就是在 cherry-pick 的同时你可以编辑 commit message,它会在执行的时候跳出一个界面让你编辑信息,当你退出的时候,会继续执行命令
  • edit 麻烦点,cherry-pick 同时 ,会停止,让你编辑信息,完了后,你要用 git rebase --continue 命令继续执行,相对上面来说有点麻烦,感觉没必要啊。
  • squash,合并此条记录到前一个记录中,并把 commit message 也合并进去 。
  • fixup ,合并此条记录到前一个记录中,但是忽略此条 commit message。

这种操作需要合并的提交是连续的,一般用于把同一个开发任务的多次连续提交合并为一次提交。我试了下面这种不连续的提交记录合并操作,这样操作的话会把2号提交合并到它上面的那个提交中(也就是图中的“CSE-6:修改客户获取方式”),并没有合并到1号提交中。
在这里插入图片描述
在这里插入图片描述
把2号提交记录合并到1号提交记录:
在这里插入图片描述
在这里插入图片描述

11. 常用操作的快捷方式

如果你使用的是 Git 管理项目,每次更新远端仓库代码都需要选中项目名--->Git--->Repository--->Pull...,操作比较麻烦,可以直接使用Ctrl+T快捷键,该快捷键可直接从 Git 更新项目,免去了多次点击选择 Pull 的操作。注意弹出框选择 Rebase 。同样,Ctrl+K能直接进行项目提交,免去了多次选择进行提交的操作。
在这里插入图片描述
使用 Ctrl+` 可直接显示版本控制中的常用操作菜单。可看到一些常用的快捷键。
在这里插入图片描述
使用 F4 可以直接打开提交记录中的文件,进行编辑。
在这里插入图片描述

12. 开发分支部分合并到主分支

使用到Cherry-Pick

目标:将develop分支的部分提交记录合并到master分支。

(1)首先切换到需要进行代码合并操作的分支,比如我们是master分支。
在这里插入图片描述
此时的Version Control中的Log下的Branch选择的是All,表示显示的是所有分支的提交记录,应该可以看到好多的分叉记录。
在这里插入图片描述
(2)将Log下的Branch切换到所要合并的代码所在的分支。比如我们是develop分支。
鼠标左键点击Branch,点击origin/...,会出现远端所有分支的列表,在列表中选择目标分支即可。
在这里插入图片描述
这里选中develop分支,此时Log下显示的就是develop分支的所有提交记录了。
在这里插入图片描述
(3)接着就可以直接按住Ctrl,选择需要合并的提交记录了,选中后右键,选择Cherry-Pick即可。后续就是正常的处理冲突和提交流程了。
在这里插入图片描述

13. 主分支被强推的解决办法

需要使用到Reset Current Branch to Here…

如果有人强推了主分支,此时我们本地的就无法提交,会产生冲突。

  • 这时如果本地没有其他修改,可以直接删除本地代码,重新检出。
  • 还可以询问下同事强推的记录开始的地方,我们可以做一个回退。也就是在提交记录中右键具体的提交记录,选择“将当前分支重置到这里”来实现。之后再进行一次 Push 即可。
    在这里插入图片描述
    在这里插入图片描述
    翻译一下这个界面:
    Thie will reset the current branch head to the selected commit, and update the working tree and the index according to the selected mode.
    将当前的分支头重置为所选的提交,并根据所选模式更新工作树和索引。
    Soft:File will not change, differences will be staged for commit.
    文件将不会更改,差异将暂存以提交。
    Mixed:File will not change, differences will not be staged.
    文件将不会改变,差异将不会暂存。
    Hard:File will be reverted to the state of the selected commit. Waring: any local changes will be lost.
    文件将恢复到所选提交的状态。警告:本地的所有改变都将丢失。
    Keep:File will be reverted to the state of the selected commit. but local changes will be kept intact.
    文件将恢复到所选提交的状态。本地的改变将会被保留。

14. 移除被添加到版本管理的文件

场景:有文件手误操作添加到了版本管理,如下图中的 mvnw 文件
在这里插入图片描述
现在想要将该文件从被管理文件中删除,图形界面没有找到操作方法,只能通过命令行来操作了:

D:\WorkGroup\IdeaProjects\data-search>D:\WorkGroup\Git\bin\git rm --cache -r mvnw
rm 'mvnw'D:\WorkGroup\IdeaProjects\data-search>

可以发现,mvnw 文件已经在未进行版本管理的文件列表中了。
在这里插入图片描述
无关内容:对于没有.git目录的文件夹下,会有以下提示,直接使用git init就可以了。

D:\WorkGroup\Git\bin>git rm --cache -r .mvn
fatal: not a git repository (or any of the parent directories): .git
D:\WorkGroup\Git\bin>git init
Initialized empty Git repository in D:/WorkGroup/Git/.git/D:\WorkGroup\Git\bin>

15. IntelliJ IDEA 使用 Git 慢的问题

最近公司给开发机断网了,就是说不能连接外网了,然后我就发现我的 IDEA 中执行 Git 相关的操作的时候特别的慢,很是抓狂。断网前不是这样的,执行很快的。下面是@遥星的文章,解决了我的问题,这里转载下,做个记录。

我是按照下面方法修改的,直接改了 IDEA 安装目录下的 bin 目录下的那两个文件的后缀。


起因
在公司电脑上使用 IntelliJ IDEA 的时候发现操作 Git 特别的慢,status、fetch、pull、checkout、commit 等基础操作都执行的特别慢,下方的 Task 进度条一直处于等待中,等待差不多 10 秒多的时候才开始执行进度。最难以忍受的是,在 Settings 里面检查 Git 的版本操作都需要接近 20 多秒的时间,才能返回结果。

结论
花了几天时间跟踪 IDEA 的执行日志以及翻看 IDEA Git 插件的源码,偶然发现 IDEA 在执行 Git 命令的时候,其实是调用了一个 exe 程序来执行命令的,问题就出在这个 exe 程序上面,猜测应该是公司给初始化的系统本身有什么域设置不合理导致在我这个系统版本执行的特别慢,就像是队列里面排队等候一样,最终试着把这个 exe 改了后缀名,问题就解决了。

解决方法
昨天公司看到有小伙伴在大群里问运维同事能不能处理一下这个问题,我突然意识到居然不止我一个人遇到了这个问题,所以分享到知乎上,供遇到这个问题的朋友们参考。

处理方案:只需要删除掉 JetBrains 系 IDE 安装目录下的 runnerw.exe(64 位系统是 runnerw64.exe)或者直接更改后缀名,反正只要让 IDE 找不到这个 exe 就可以,然后这个问题就解决了。不需要重启 IDE ,即时生效,如果你使用的是 JetBrains ToolBox 来安装升级 IDE 的话,每次 IDE 更新,你都需要重新去屏蔽那两个文件;如果是官网下载安装包安装的,改一次就行了。

我的这两文件是在下面目录中:

D:\work\IntelliJ IDEA 2021.1.2\bin

在这里插入图片描述
关于 Toolbox
如果你是 Toolbox 安装的 IDE,要找到 IDE 的安装目录的话,你可以在开始菜单搜索 IDE 快捷方式右键"打开文件所在的位置";也可以直接在 Toolbox 里找到你的 IDE,然后点击右侧的"三个点"更多菜单,里面选择"Settings"进入 IDE 设置,依次点击"Configuration"展开选项,找到"Install lacation",可以直接复制安装路径,或者点击下方的"Show…"直接打开安装目录。

后续
已确认,卡顿和执行慢的根源是某些钩子程序,我这边的是"IP Guard"导致。

如果你是公司电脑,按照上面提到的方法处理就行,毕竟公司的没办法。

如果你是自己私人电脑,那就想办法删掉这个"IP Guard"吧,这个玩意是用来监控你的电脑的,有些公司是强制要求,然后通过域设置推送到你的计算机上的,那就不能删除。如果是私人电脑,百度一下怎么删除,按照文章,一般是通过 pe 进去,然后删掉那些文件就行了。

关于如何查看你的电脑是否也被"IP Guard"所支配,去看看你 C 盘系统目录就知道啦,具体路径的话,看看有没有"winrdlv3.exe"这个程序就好了,参考路径如下:

C:\Windows\System32\winrdlv3.exe
C:\Windows\SysWOW64\winrdlv3.exe

16. 本地新建项目添加 Git 管理

在这里插入图片描述
如果有远程仓库,提交的时候配置远端地址即可。


http://chatgpt.dhexx.cn/article/lxQSJ4Gk.shtml

相关文章

IDEA中项目集成git提交代码详细步骤

简介:在团队协作开发的过程中,好的代码管理能更加有效的使日常开发的过程中对各个开发人员提高开发速度。下面将详细介绍在IDEA中使用git提交代码的过程: IDEA中使用git提交代码 一:pull代码更新的结果:没有代码需要更…

关于idea使用git的简单说明

一、工具 1、安装git 2、idea 3、使用gitblit搭建服务器 可以参考这个文章:http://blog.csdn.net/u010690828/article/details/53735508 二、idea简单配置 首先idea需要设置git,按一下面步骤走 选择你安装的git, 注意:图上有两个选项&a…

如何在IDEA中使用Git

目录 01.在IDEA中配置Git02.在IDEA中使用Git将文件添加到暂存区03.在IDEA中使用Git将文件推送到远程仓库3.1.项目第一次推送至远程仓库报错问题解决: Push rejected: Push to origin/master was rejected 04.在IDEA中使用Git克隆远程仓库05.在IDEA中使用Git从远程仓…

在 IDEA 中使用 Git

1. 在IDEA中配置Git 点击 settings 找到 Version Control 下的 Git ,并把 git.exe 的路径(默认)选入 在IDEA中使用Git,本质上还是使用的本地安装的Git软件,所以需要在IDEA中配置Git 然后点击 Test ,出现版…

如何在IntelliJ IDEA中使用git

0.前言 本文主要讲述在IntelliJ IDEA中使用git的方法,git的原理、命令行使用及可视化图形工具的使用请听下回分解。 首先安装IntelliJ IDEA2018.2以及git 2.28.0 1.在IDEA中配置git 在File–>Settings–>Version Control中找到Git,或者直接搜索…

初次入职,git使用教程:如何在idea使用git拉取代码,提交代码,以及在gitlab上发起合并请求

git的使用相信是很多刚踏入程序员这一行朋友的痛点,刚入职的一段时间非常担心git用错,把别人的代码覆盖掉,下面我详细介绍一下如何在idea上使用git,拉取,提交代码,处理冲突,以及发起合并请求。 …

如何在IDEA 中玩转 Git

文章目录 前言一、基本配置二、clone三、分支四、pull总结 前言 Git 有很多客户端工具,不过感觉还是命令行操作最好用,方便又快捷,不过命令行操作需要小伙伴们对 Git 命令比较熟练,这可能对有的人来说会有一些难度,所…

IDEA中使用Git

目录 一、IDEA中使用Git 配置Git settings ——>Version Control——>Git 点击Test测试版本号 下载gitee插件 配置账户 第一种方式:账号密码 第二种方式:通过Token令牌 分享单个项目 组员需要拿到项目的SSH地址 二、总结 一、IDEA中使用G…

Idea中使用Git详细教学

目录 一、配置 Git 二、创建项目远程仓库 三、初始化本地仓库 方法一: 方法二: 四、连接远程仓库 五、提交与拉取到本地仓库 六、推送到远程仓库 七、克隆远程仓库到本地 方法一: 方法二: 八、Git分支操作 一、配置 G…

Git常用命令、在IDEA中使用Git

文章目录 一、概述二、Git常用命令1.Git全局设置2.获取Git仓库-从远程仓库克隆3.工作区、暂存区、版本库 概念4.Git工作区中文件的状态5.本地仓库操作6.远程仓库操作7.分支操作8.标签操作 三、在IDEA中使用Git1.在IDEA中配置Git2.获取Git仓库3.gitignore文件作用4.本地仓库的操…

2021最新最全!IntelliJ Idea如何使用使用Git!Git到底是什么!(值得一看)

IntelliJ Idea如何使用使用Git!Git到底是什么! 前言一、Git是什么二、Git 工作区、暂存区和版本库、远程仓库三、Git与SVN的区别3.1 存储方式3.2 使用方式3.3 管理模式 四、Git使用4.1 Git开始、Git 速成4.2 环境配置4.3 创建仓库4.4 pull与push4.5 git分…

IntelliJ IDEA中使用git

在idea使用git完成版本控制 git操作本地仓库(自己进行版本控制) git操作远程仓库(多人进行版本控制) 配置Git创建工程集成Git推送代码到远程仓库从远程仓库克隆从远程仓库拉取 1,在Idea中配置git 安装好IntelliJ IDEA后&#xf…

IDEA 使用Git图文详解

一、配置git路劲: 或 二、克隆项目 或 填写克隆路径及输出路径 三、上传项目到git仓库 1、在你的idea里新建git仓库,这是新建本地仓库,等会会同步到线上git仓库 2、新建后如果文件名不是绿色的表示没有加入到git索引中 3、将需要上传的文件…

(详解)IDEA中使用git教程

前言 最近学习了一下VCS(Version Control System),这里我选择的是Git而不是SVN,因为Git在本地磁盘上就保留着所有当前项目的历史更新,所以处理起来速度飞快,这是使用空间换时间的处理方式。使用Git,即使在没有网络或V…

IDEA 使用 Git 操作详解

目录 IDEA 配置 Git Git clone 克隆项目 Git init 初始化本地项目并推送 Git add 添加文件到暂存区 Git commit 提交文件 Git push 推送文件到服务器 Git pull 拉取服务器文件 Git fetch 抓取服务器文件 Git merge 解决文件冲突 文件版本内容对比 Comare with 对比本…

IDEA中git的使用

1、克隆远程仓库代码 1.1在idea顶部导航栏选择CSV→Get from Version Control 1.2打开之后Version control选择Git,填写URL,Directory,填好之后点击clone 1.3拉取成功之后,IDEA会出现commit,push等按钮 2、切换分支 …

IDEA中如何使用Git——图文超详细,包会

1、IDEA中配置Git 选择File→Settings打开设置窗口,找到Version Control下的Git选项,然后配置Git路径。如果Git安装在默认路径下,IDEA可以自动找到。选择路径后点击右侧Test,出现版本号提示即可【由于IDEA版本问题,提示的方式可能…

模块化开发-概念篇

介绍 模块化可以说是当下最重要的前端开发范式之一,它随着前端应用的日益复杂,项目代码已经逐渐膨胀到了不得不花大量时间去管理的程度了。而模块化呢就是一种最主流的代码组织方式它通过把我们的复杂代码按照功能的不同划分为不同的模块,单…

Android模块化开发架构

模块化开发架构 为什么使用模块化架构开发方式 在项目组开发过程中,一个项目业务有很多,每个成员都负责一部分业务开发,这个时候业务代码全部都糅杂在一起,不管是后面维护和代码阅读,都是很困难的,这个时候…

Vue的模块化开发

一、为什么需要模块化 客户端需要完成的事情越来越多,代码量也是与日俱增。 为了应对代码量的剧增,我们通常会将代码组织在多个js文件中,进行维护。 但是这种维护方式,依然不能避免一些灾难性的问题。 比如小明和小丽在不同的JS文…