Git | 在IDEA中使用Git

目录
一、在IDEA中配置Git
1.1 配置Git
1.2 获取Git仓库
1.3 将本地项目推送到远程仓库
1.4 .gitignore文件的作用
二、本地仓库操作
2.1 将文件加入暂存区
2.2 将暂存区的文件提交到版本库
2.3 查看日志
三、远程仓库操作
3.1 查看和添加远程仓库
3.2 推送至远程仓库
3.3 从远程仓库拉取
五、分支操作
一、在IDEA中配置Git
1.1 配置Git
在IDEA中使用Git,本质上是使用安装在本地的git软件,(并不是使用远程仓库,或者说使用码云Gitee)。
打开IDEA,点击File -> Setting (快捷键是CTRL+alt+S),搜索Git并配置Git的安装目录

1.2 获取Git仓库
在IDEA中使用Git获取仓库的两种方式:
| 本地初始化仓库 | 从远程仓库克隆 |
| 相当于 git init 命令,其实就是把自己的项目变成一个git仓库,Create Git Repository | 相当于 git clone 命令,其实是把远程仓库的项目拷贝下来,Get From Version Control |
本地初始化仓库步骤:
(1)新建一个项目
这里以新建Maven项目为例,不知道如何新建Maven项目可以查看这篇文章,IDEA创建Maven项目

(2)将这个项目所在目录变成一个Git仓库,从而实现用Git管理这个项目



(3)创建好本地仓库后,IDEA中会出现几个Git操作的图标

从远程仓库克隆步骤:
从远程仓库获取是以后工作中用的更多的,因为当你进入到某家公司的时候,往往项目已经开发到一定阶段了,因此此时我们要做的就是从远程仓库获取项目。
(1)点击VCS,点击Get From Version Control
当使用IDEA新建项目并添加到本地仓库之后,有些版本的IDEA认为你已经使用了VCS,所以不会出现VCS了。
此时可以点击File -> New -> Project From Version Control进行从远程仓库克隆代码。

1.3 将本地项目推送到远程仓库
将本地项目推送到远程仓库时遇到的问题:
1.拒绝Push推送

这个报错的意思大概是,更新被拒绝是因为远程仓库的部分文件本地仓库没有,这通常发生在本地新建仓库之后第一次要推送到远程仓库时。
解决方案:
(1)先拉取远程仓库的分支(一般为master,origin一般指远程仓库的名字)
2.在Pull时遇到的问题-拒绝合并不相关的请求

出现这个问题的最主要原因是本地仓库和远程仓库实际上是两个独立的仓库。
解决方案:
点击IDEA中的命令提示符,输入下面的命令,执行即可。

git pull origin master --allow-unrelated-histories

(2)再次push

至此,将本地仓库的项目推送至远程仓库成功!
1.4 .gitignore文件的作用
.gitignore文件用于定义哪些文件不需要交给Git管理,文件名是固定的,不可修改。
(1).gitignore文件的生成
在创建远程仓库时,可以创建这个文件。

(2).gitignore对应的常用Java模板
# Compiled class file
*.class# Eclipse
.project
.classpath
.settings/# Intellij
*.ipr
*.iml
*.iws
.idea/# Maven
target/# Gradle
build
.gradle# Log file
*.log
log/# out
**/out/# Mac
.DS_Store# others
*.jar
*.war
*.zip
*.tar
*.tar.gz
*.pid
*.orig
temp/
二、本地仓库操作
2.1 将文件加入暂存区

此时如果要将文件加入暂存区,就是相当于 git add 这个命令,
未暂存的文件是红色,已暂存的文件是蓝色。
(1)可以点击IDEA中的这个按钮:

(2) 或者右击文件选择Add:

(3)IDEA设置版本控制工具自动Add

2.2 将暂存区的文件提交到版本库
这个操作相当于 git commit -m 这个命令,点击IDEA中的图标或者右击都可以提交。

2.3 查看日志
相当于 git log 这个命令,点击IDEA中的Git图标


三、远程仓库操作
3.1 查看和添加远程仓库


3.2 推送至远程仓库

3.3 从远程仓库拉取


五、分支操作
在IDEA中可以进行查看分支,创建分支,切换分支,推送分支到远程仓库,合并分支的操作。


切换分支时遇到的问题:
1.如果当前分支还有未提交的内容,即unchanges files
那么切换分支后当前分支未修改的内容会带到另外一个分支上去。
解决方案:
分支修改后要先提交再切换
2.切换分支后弹出提示 Workspace associated with branch 'master' has been restored
与分支“master”关联的工作区已恢复
解决方案:
暂不理会,x掉即可


至此,在IDEA中使用Git的入门教程就到此结束,
希望自己在这之后更能理解使用Git工具进行团队开发的意义和作用。
如果本篇文章对你有帮助,欢迎一键三连!
相关文章:
Git | 在IDEA中使用Git
目录 一、在IDEA中配置Git 1.1 配置Git 1.2 获取Git仓库 1.3 将本地项目推送到远程仓库 1.4 .gitignore文件的作用 二、本地仓库操作 2.1 将文件加入暂存区 2.2 将暂存区的文件提交到版本库 2.3 查看日志 三、远程仓库操作 3.1 查看和添加远程仓库 3.2 推送至远程仓…...
< Linux >:Linux 进程概念 (4)
目录 五、孤儿进程 六、进程优先级 6.1、基本概念 6.2、查看时实系统进程 6.3、PRI and NI 七、其他概念 四、X 状态:死亡状态 所谓进程处于 X 状态(死亡状态)代表的就是该进程已经死亡了,即操作系统可以随时回收它的资源(操作系统也可以…...
七、Java框架之MyBatisPlus
黑马课程 文章目录1. MyBatisPlus入门1.1 MyBatisPlus入门案例步骤1:创建spring boot工程步骤2:配置application.yml步骤3:创建数据库表(重点)步骤4:编写dao层步骤5:测试1.2 标准数据层开发标准…...
C语言柔性数组
目录什么是柔性数组柔性数组的使用什么是柔性数组 柔性数组是在C99中定义的 结构体的最后一个元素允许是未知大小的数组,这就叫柔性书组 柔性数组的长度可以写成0,也可以不规定数组长度 下面两种写法都是正确的 struct S { int i; int a[0];//柔性数…...
支付功能测试用例
Author:ChatGPT用例设计下面是一些支付功能测试用例:账户余额检查:测试用户的账户余额是否准确。支付方式选择:测试用户可以使用的支付方式,包括信用卡、借记卡、电子钱包等。支付金额确认:测试用户输入的支…...
牛客网Python篇数据分析习题(一)
1.现有一个Nowcoder.csv文件,它记录了牛客网的部分用户数据,包含如下字段(字段与字段之间以逗号间隔): Nowcoder_ID:用户ID Level:等级 Achievement_value:成就值 Num_of_exercise&a…...
【C语言】“指针类型”与“野指针”
文章目录一、指针是什么❔二、指针和指针类型1.指针-整数2.指针解引用三.野指针1.引起野指针的原因2.如果避免野指针完结一、指针是什么❔ 指针也就是 内存地址 ,在计算机上我们访问数据需要通过内存地址来访问,在C语言中,指针变量是用来存放…...
Linux:软链接和硬链接的理解
Linux通过命令行创建快捷方式使用的命令是ln,这里就涉及到了软链接和硬链接,确实有些不好理解,如果你也一样,那么可以继续看下去了 目录ln命令语法实操创建软链接:ln -s [源文件或目录][目标文件或目录]创建硬链接&…...
力扣HOT100 (1-5)
目录 1.两数之和 2.两数相加 拓展到牛客的TOP101的BM11( 链表相加(二)) 3.无重复的最长子串(牛客BM92) 解法1: 解法2: 4.寻找两个正序数组的中位数 5.最长回文子串 1.两数之和 思路:用Has…...
车载基础软件——AUTOSAR CP典型应用案例SOME/IP和TSN时间同步
我是穿拖鞋的汉子,魔都中坚持长期主义的一个屌丝工程师! 今天是2023年2月7日,上海还在下着雨,估计是到了梅雨时节(提前到来?),真想说句我劝天公重安排,不让梅雨早时来!!! 老规矩分享一段喜欢的文字,避免自己成为高知识低文化的工科男: “ 我们只需做的,是走好…...
【Linux】操作系统与进程的概念
目录 冯诺依曼体系 注意 为什么CPU不直接访问输入或输出设备? 跨主机间数据的传递 操作系统 管理 进程 描述进程 进程的查看和终止 bash 通过系统调用创建子进程 fork的辨析 冯诺依曼体系 🥖冯诺依曼结构也称普林斯顿结构,是一种将…...
(1分钟突击面试) 高斯牛顿、LM、Dogleg后端优化算法
高斯牛顿法 LM法 DogLeg方法编辑切换为居中添加图片注释,不超过 140 字(可选)知识点:高斯牛顿是线搜索方法 LM方法是信赖域方法。编辑切换为居中添加图片注释,不超过 140 字(可选)这个就是JTJ是…...
d3.js与echarts对比
D3.js 和 ECharts 是两种常用的数据可视化工具,它们有着不同的优缺点: D3.js: 优点: 功能强大,提供了极高的灵活性和定制性,支持多种图表类型,如柱状图、饼图、散点图、树图、网络图等。 可以…...
机器学习之K-means原理详解、公式推导、简单实例(python实现,sklearn调包)
目录1. 聚类原理1.1. 无监督与聚类1.2. K均值算法2. 公式推导2.1. 距离2.2. 最小平方误差3. 实例3.1. python实现3.2. sklearn实现4. 运行(可直接食用)1. 聚类原理 1.1. 无监督与聚类 在这部分我今天主要介绍K均值聚类算法,在这之前我想提一…...
OBS 进阶 一个从自定义对话框中 传参到插件的例子
目录 一、自定义对话框,传参综合例子 1、自定义对话框 1)自定义对话框类...
在Linux和Windows上编译datax-web-ui源码
记录:375场景:在CentOS 7.9操作系统上,使用apache-maven-3.8.7安装编译datax-web-ui源码。在Windows上操作系统上,使用apache-maven-3.8.7编译datax-web-ui源码。版本:JDK 1.8 node-v14.17.3 npm-6.14.13datax-web-ui开…...
React组件生命周期管理
组件生命,就是组件在不同阶段提供对应的钩子函数,来处理逻辑操作。比如初始化阶段,我们需要初始化组件相关的状态和变量。组件销毁阶段时,我们需要把一些数据结构销毁来节约内存。 React组件生命周期 React组件生命周期分为三个阶段:挂载阶段【Mount】、更新阶段【Updat…...
Linux:全志H3图像codec使用笔记
1. 前言 限于作者能力水平,本文可能存在谬误,因此而给读者带来的损失,作者不做任何承诺。 2. 图像 codec 概述 图像编解码器(codec) 包含 Encoder 和 Decoder 两部分功能。我们用下列分别说明 Encoder 和 Decoder 的工作方式。 ----------…...
【Python小游戏】通过这款专为程序员设计的《极限车神》小游戏,你的打字速度可以赢过专业录入员,这个秘密98%的人都不知道哦~(爆赞)
导语 哈喽,我是你们的木木子👸! 今天小编要为大家介绍一款小编自己用代码码出来的赛车风格的打字小游戏 取名暂定为《🚗极限车神🚗》打字小游戏。 这款Pygame小游戏在玩法上可以说十分创新,不仅能游戏还…...
Springboot扩展点之BeanPostProcessor
前言 Springboot(Spring)的扩展点其实有很多,但是都有一个共同点,都是围绕着Bean和BeanFactory(容器)展开的,其实这也很好理解,Spring的核心是控制反转、依赖注入、面向切面编程&…...
轻量级AI写作工坊:OpenClaw+nanobot内容创作流
轻量级AI写作工坊:OpenClawnanobot内容创作流 1. 为什么需要自动化写作助手 作为一名技术博主兼自媒体运营者,我每天都要面对内容创作的"三重压力":选题焦虑、写作耗时、发布繁琐。最痛苦的是,当我花两小时写完一篇技…...
【RISC-V 指令集】RISC-V 向量V扩展指令集介绍(五)- 动态配置与性能优化实战(vsetvli/vsetivli/vsetvl)
1. 动态向量配置指令的核心作用 RISC-V向量扩展指令集中最精妙的设计之一,就是允许程序运行时动态调整向量处理参数的机制。想象你正在用不同尺寸的螺丝刀组装家具——当遇到大螺丝就换大号刀头,碰到小螺丝立即切换精密刀头,这就是vsetvli/vs…...
AceCommon:Arduino嵌入式零堆分配轻量C++工具库
1. AceCommon 库概述:面向嵌入式 Arduino 的轻量级底层工具集AceCommon 是一个专为资源受限的微控制器平台(尤其是 Arduino 生态)设计的零依赖、低开销 C 工具库。其核心设计哲学是“小而精、无侵入、可复用”。与常见的功能臃肿、依赖繁杂的…...
WebGL BIM可视化:浏览器端BIM解决方案的技术实践与行业应用
WebGL BIM可视化:浏览器端BIM解决方案的技术实践与行业应用 【免费下载链接】xeokit-bim-viewer A browser-based BIM viewer, built on the xeokit SDK 项目地址: https://gitcode.com/gh_mirrors/xe/xeokit-bim-viewer 如何解决浏览器端BIM模型加载慢、操…...
水库调度员必看:动态规划在月度发电计划中的5个避坑指南
水库调度员实战指南:动态规划在月度发电计划中的5个关键避坑策略 在水利工程领域,水库调度是一项集科学性、技术性和艺术性于一体的复杂工作。作为水库调度员,我们每天都在与时间、水量和电力需求进行着精妙的博弈。而动态规划作为一种强大的…...
煤矿电液阀系统摄像仪护套连接器 DLJ01(1000)参数
在煤矿综采工作面液压支架电液控制系统中,摄像仪护套连接器 DLJ01(1000)作为矿用本安型摄像仪与电源、信号传输线缆之间的专用接口,承担着视频信号与供电的稳定传输任务。其型号中的“1000”代表线缆长度为1000mm(1米),…...
AOP 失效的 7 种死法与复活指南
还是那句话,知识是一个返回的过程,追一句:时间出真知今天我们要聊的是一个“灵异事件”频发的领域——Spring AOP 失效。你是不是也经历过这种崩溃:“明明加了 Transactional,为什么数据库报错不回滚?” “…...
GD32F4开发板GD-LINK驱动安装与Keil配置全攻略(附常见问题解决)
GD32F4开发板GD-LINK驱动安装与Keil配置全攻略(附常见问题解决) 第一次拿到GD32F4开发板时,很多开发者都会遇到驱动安装失败、Keil识别不到芯片的问题。这些问题看似简单,却可能让新手折腾好几个小时。本文将用最直白的方式&#…...
asp毕业设计下载(全套源码+配套论文)——基于asp+sqlserver的WEB社区论坛设计与实现
基于aspsqlserver的WEB社区论坛设计与实现(毕业论文程序源码) 大家好,今天给大家介绍基于aspsqlserver的WEB社区论坛设计与实现,更多精选毕业设计项目下载见文末哦。 文章目录: 基于aspsqlserver的WEB社区论坛设计与…...
不止于搭建:用DVWA靶场在Kali上复现SQL注入与文件上传漏洞实战
不止于搭建:用DVWA靶场在Kali上复现SQL注入与文件上传漏洞实战 当你第一次在Kali Linux上成功运行DVWA靶场时,那种成就感就像解锁了新世界的大门。但真正的乐趣才刚刚开始——这个看似简单的靶场,其实是网络安全爱好者最好的实战训练场。本文…...
