Git学习笔记(五)IDEA使用Git

        在前面几篇文章中,我们已经介绍了git的基础知识,知道了其主要作用是用来进行代码的版本管理;并且已经介绍了Git操作的常用命令。在日常的开发环境下,除了通过Bash命令行来操作Git之外,我们另外一种常用的操作方式则是直接通过开发工具来进行代码的版本管理。目前主流的开发工具如eclipse、IDEA等对于Git都提供了强大的支持,这里由于我日常使用的开发工具是IDEA,因此用IDEA进行举例。

IDEA配置Git

初始配置

        安装好IDEA后,如果Git安装在默认路径下,那么idea会自动找到git的位置,如果更改了Git的安 装位置则需要手动配置下Git的路径。选择File→Settings打开设置窗口,找到Version Control下的git选项:

如果在安装Git时都是选择的默认设置,这里一般会自动检测路径;如果没检测到,则手动选择Git安装目录下的git.exe文件。路径选择好后,可以点击右侧的测试按钮,如果显示了Git版本则表示配置成功了:

        接下来我们需要将一个正在开发的项目交给Git管理,首先需要做的事就是构建本地仓库,然后连接远程仓库

构建本地仓库

        通过Git Bash来构建本地仓库的方法我们在学习笔记(二)基本命令中介绍了,只需要在文件夹下打开Git Bash,然后执行git init命令即可,而在IDEA中打开的项目,我们可以通过简单的鼠标点击的方式来为项目构建本地仓库,具体操作方法如下图:

        经过上述步骤,其实我们本地仓库就已经构建好了,让我们来看看构建完成后界面有哪些变化:

可以看到IDEA的主界面变化主要有以下三点:

  1. 多出了一个文件vcs.xml:里面是一些版本控制的初始配置
  2. 文件名变成了红色:这代表着这些文件都处于Untracked状态(对状态不熟悉的同学去翻看Git学习笔记(一)基础概念)
  3. 右上角多出了三个图标:这也是使用IDEA进行Git操作最常用的三个按钮,后面会一一介绍他们的功能。

当发现右上角出现Git图标之后,意味着我们这个项目已经被Git管理,本地仓库构建完成。

连接远程仓库

        连接远程仓库之前,我们需要先构建一个远程仓库,具体步在Git学习笔记(四)远程仓库中有详细介绍,并且里面包含了如何通过Git Bash来让本地仓库与远程仓库建立连接的方法(git remote add [远程仓库名] [远程仓库地址]),这里就不过多赘述。

        建立好远程仓库之后,在IDEA中进行如下配置,就可以将刚刚构建的本地仓库与远程仓库建立连接:

        经过上述步骤,我们IDEA中的有关Git的相关配置就已经全部完成,接下来就可以直接在IDEA中使用Git来进行版本控制啦。

IDEA操作Git

最后,我们来讲讲IDEA中用来操作Git的几个常用按钮:

  1. 拉取按钮,表示从远程仓库拉取内容到本地仓库并合并到本地仓库的当前分支,相当于Git Bash中执行的pull命令。
  2. 提交按钮,表示将修改提交到本地仓库,相当于Git Bash中执行的add+commit命令。(注:IDEA中弱化了暂存区的存在,但实际上commit之前还是会先将修改add到暂存区)


    文件名颜色变绿,表示该文件已经提交到暂存区,但是还没有提交到仓库,处于staged状态,这时我们需要再点一次提交按钮。

    文件名变成白色,表示文件已提交,状态为commited。
  3. 推送按钮,表示将本地仓库的内容推送到远程仓库,相当于Git Bash中执行push命令。(注意:一般在点击推送按钮之前,需要先点击拉取按钮,在本地处理好分支冲突之后才能够推送到远程仓库)
  4. Git控制台,点击后可以打开Git控制台,在控制台中可以看到分支情况。
  5. 表示当前分支,对于分支的操作大部分在这里也可以进行:

    (注:这里的签出其实就是切换分支(checkout),汉化包的问题)

        以上几个按钮,就是我们日常在使用IDEA进行开发的过程中经常用到的Git管理按钮,通过这些按钮,我们能够方便的对代码进行版本控制,通过可视化的方式,以及简洁明了的操作方法,极大的减轻了我们使用Git时的负担,不再需要通过命令来对Git进行操作。不过个人建议Git bash的常用命令和一些基本概念还是需要掌握(可以看我之前的文章)。最后附上文件名颜色与文件状态的对应关系:

红色,未加入版本控制,git不管理,或者存在分支冲突
绿色,已加入版本控制,暂未提交
蓝色,已加入版本控制,已提交,有改动(提交后就变回白色)
白色,已加入版本控制,已提交,无改动
灰色:已加入版本控制,忽略的文件(.ignore)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/830843.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

基于STC12C5A60S2系列1T 8051单片机的Proteus中的单片机发送一帧或一串数据给串口调试助手软件接收区显示出来的串口通信应用

基于STC12C5A60S2系列1T 8051单片机的Proteus中的单片机发送一帧或一串数据给串口调试助手软件接收区显示出来的串口通信应用 STC12C5A60S2系列1T 8051单片机管脚图STC12C5A60S2系列1T 8051单片机串口通信介绍STC12C5A60S2系列1T 8051单片机串口通信的结构基于STC12C5A60S2系列…

Python_GUI框架 PyQt 与 Pyside6的介绍

Python_GUI框架 PyQt 与 Pyside6的介绍 一、简介 在Python的GUI(图形用户界面)开发领域,PyQt和PySide6是两个非常重要的工具包。它们都基于Qt库,为Python开发者提供了丰富的GUI组件和强大的功能。当然Python也有一些其他的GUI工…

手把手教数据结构与算法:优先级队列(银行排队问题)

队列 基本概念 队列的定义 队列(Queue):队列是一种常见的数据结构,遵循先进先出(First-In-First-Out, FIFO)的原则。在队列中,元素按照进入队列的顺序排列。队列是一个线性的数据结构&#x…

【团体程序设计天梯赛】往年关键真题 L2-036 网红点打卡攻略 模拟 L2-037 包装机 栈和队列 详细分析完整AC代码

【团体程序设计天梯赛 往年关键真题 详细分析&完整AC代码】搞懂了赛场上拿下就稳 【团体程序设计天梯赛 往年关键真题 25分题合集 详细分析&完整AC代码】(L2-001 - L2-024)搞懂了赛场上拿下就稳了 【团体程序设计天梯赛 往年关键真题 25分题合…

《Redis使用手册之列表》

《Redis使用手册之列表》 目录 **《Redis使用手册之列表》****LPUSH:将元素推入列表左端****LPUSHX、RPUSHX:只对已存在的列表执行推入操作****LPOP:弹出列表最左端的元素****RPOP:弹出列表最右端的元素****RPOPLPUSH:…

ElasticSearch教程入门到精通——第二部分(基于ELK技术栈elasticsearch 7.x新特性)

ElasticSearch教程入门到精通——第二部分(基于ELK技术栈elasticsearch 7.x新特性) 1. JavaAPI-环境准备1.1 新建Maven工程——添加依赖1.2 HelloElasticsearch 2. 索引2.1 索引——创建2.2 索引——查询2.3 索引——删除 3. 文档3.1 文档——重构3.2 文…

SQL 基础 | BETWEEN 的常见用法

在SQL中,BETWEEN是一个操作符,用于选取介于两个值之间的数据。 它包含这两个边界值。BETWEEN操作符常用于WHERE子句中,以便选取某个范围内的值。 以下是BETWEEN的一些常见用法: 选取介于两个值之间的值: 使用 BETWEEN来…

基于昇腾AI | 英码科技EA500I使用AscendCL实现垃圾分类和视频物体分类应用

现如今,人工智能迅猛发展,AI赋能产业发展的速度正在加快,“AI”的需求蜂拥而来,但AI应用快速落地的过程中仍存在很大的挑战:向下需要适配的硬件,向上需要完善的技术支持,两者缺一不可。 基于此&…

【配置】Docker搭建JSON在线解析网站

云服务器打开端口8787 连接上docker运行 docker run -id --name jsonhero -p 8787:8787 -e SESSION_SECRETabc123 henryclw/jsonhero-webhttp://ip:8787访问 Github:地址

STM32 看门狗WDG

一、看门狗(Watchdog) 看门狗可以监控程序的运行状态,当程序因为设计漏洞、硬件故障、电磁干扰等原因,出现卡死或跑飞现象时,看门狗能及时复位程序,避免程序陷入长时间的罢工状态,保证系统的可靠…

Django后台项目开发实战一

开发环境使用 Anaconda, IDE 使用 pycharm 第一阶段 创建 Django 项目 在 Anaconda Prompt 中逐步输入下面的命令(之后的所有命令都在这个) 首先创建一个虚拟环境,名称自拟,python 版本我这里使用 3.9.18 关于 python 版本和…

PotatoPie 4.0 实验教程(28) —— FPGA实现sobel算子对摄像头图像进行边缘提取

什么是sobel算子? Sobel 算子是一种常用的边缘检测算子,用于在图像中检测边缘。它基于对图像进行梯度运算,可以帮助识别图像中灰度值变化较大的区域,从而找到图像中的边缘。 Sobel 算子通过计算图像的水平和垂直方向的一阶导数来…

Linux 虚拟主机切换php版本及参数

我使用的Hostease的Linux虚拟主机产品,由于网站程序需要支持高版本的PHP,程序已经上传到主机,但是没有找到切换PHP以及查看PHP有哪些版本的位置,因此咨询了Hostease的技术支持,寻求帮助了解到可以实现在cPanel面板上找到此切换PHP版本的按钮&…

2024 五一杯高校数学建模邀请赛(A题)|钢板最优切割路径问题|建模秘籍文章代码思路大全

铛铛!小秘籍来咯! 小秘籍团队独辟蹊径,运用Dijkstra算法,最优路径切割等强大工具,构建了这一题的详细解答哦! 为大家量身打造创新解决方案。小秘籍团队,始终引领着建模问题求解的风潮。 抓紧小秘…

Stability AI 推出稳定音频 2.0:为创作者提供先进的 AI 生成音频

概述 Stability AI 的发布再次突破了创新的界限。这一尖端模型以其前身的成功为基础,引入了一系列突破性的功能,有望彻底改变艺术家和音乐家创建和操作音频内容的方式。 Stable Audio 2.0 代表了人工智能生成音频发展的一个重要里程碑,为质量…

Flask模版详解

Flask模版详解 概述Jinja2模板引擎渲染模版的步骤变量控制结构自定义错误页面链接静态文件 概述 模板是一个包含响应文本的文件,其中包含用占位变量表示的动态部分,其具体值只在请求的上下文中才能知道。使用真实值替换变量,再返回最终得到的…

Android4.4真机移植过程笔记(一)

1、RK源码编译 获取内核源码: git clone git172.28.1.172:rk3188_kernel -b xtc_ok1000 内核编译环境: 从172.28.1.132编译服务器的/data1/ZouZhiPing目录下拷贝toolchain.tar.gz(交叉编译工具链)并解压到与rk3188_kernel同级目…

Golang | Leetcode Golang题解之第59题螺旋矩阵II

题目&#xff1a; 题解&#xff1a; func generateMatrix(n int) [][]int {matrix : make([][]int, n)for i : range matrix {matrix[i] make([]int, n)}num : 1left, right, top, bottom : 0, n-1, 0, n-1for left < right && top < bottom {for column : lef…

前端发起网络请求的几种常见方式(XMLHttpRequest、FetchApi、jQueryAjax、Axios)

摘要 前端发起网络请求的几种常见方式包括&#xff1a; XMLHttpRequest (XHR)&#xff1a; 这是最传统和最常见的方式之一。它允许客户端与服务器进行异步通信。XHR API 提供了一个在后台发送 HTTP 请求和接收响应的机制&#xff0c;使得页面能够在不刷新的情况下更新部分内容…

【分享】如何将word格式文档转化为PDF格式

在日常的办公和学习中&#xff0c;我们经常需要将Word文档转换为PDF格式。PDF作为一种通用的文件格式&#xff0c;具有跨平台、易读性高等优点&#xff0c;因此在许多场合下都更为适用。那么&#xff0c;如何实现Word转PDF呢&#xff1f;本文将介绍几种常用的方法&#xff0c;帮…