代码编织梦想

IDEA结合Git实现项目管理实战——基础篇

前言

本系列将结合我个人参与团队协作开发项目的经验来介绍如何使用IDEA结合Git实现项目管理,因此可能与真正的企业开发协作存在差异,且文章所涉及的解析可能存在个人理解与实际的偏差。

本系列主讲如何具体操作,因此对于Git内部的原理将不会过多深究

本文严禁任何形式的转载、搬运!

本文作为该系列的基础篇,将简要介绍使用Git所应该知道的最基本的知识,因此不算深究原理,哈哈。

注意:本文假设你已经成功在IDEA中配置了git

Git的四个工作区域

基本概念

Git本地有三个工作区域,分别是工作区暂存区本地仓库

Git远程有一个工作区域,叫做远程仓库

  • 工作区:开发者当前工作的目录,主要包含项目的实际文件,其中可能包括未进行版本管理的新文件和已修改的文件。

  • 暂存区:作为一个临时存储区域,用于存放工作区中已经修改的文件的快照,以便将它们作为一个逻辑单元提交到本地仓库。

  • 本地库:包含了项目的提交历史,开发者可以对其进行各种操作,如分支合并、变基、签出等。本地库是在开发者本地计算机上的存储库。

  • 远程库: 存放在代码托管平台(如Gitee、GitHub)上的仓库,包含了已推送的代码版本、分支、标签等信息。开发者可以通过推送和拉取操作与远程库进行交互,以保持代码同步。

概念解释

工作区

一下子引入了这么多概念,可能大家会有点接受不了,那么这里对以上概念进行详细解释。

具体来说,工作区可以看做你在IDEA中打开的项目目录,如下图:

这里的项目目录就可以看作是工作区,但是在这个工作区中,既存在正常颜色(白色)的文件名,也存在红色、绿色和蓝色的文件名,那么这些文件分别代表什么含义?这里的文件的颜色,其实也就对应着上文所谓未进行版本管理的新文件和已修改的文件。如下表:

颜色含义
白色在当前提交历史未改动或者已经提交到本地库的文件
红色未进行版本管理的新文件,也被称为未跟踪的文件
绿色已经进行版本管理的新文件,该文件已被添加到暂存区中
蓝色当前工作区中被修改的文件,该文件已被添加到暂存区中,与绿色相似

红色文件名、绿色文件名实例

大家可以自行测试下,如果你直接在项目目录中创建一个文件的话,IDEA会做出提醒:

这时如果你选择添加的话,该文件就会变成绿色文件从而被Git进行版本管理,如果选择取消的话,说明你不希望该文件被Git管理,那么该文件就是红色文件而不能被提交到暂存区

总结:

  1. 当你创建一个新文件时,它就是红色的,表示这是一个未跟踪的文件。通过运行 git add 命令,将文件添加到暂存区,此时文件变为绿色,表示它已经被 Git 管理并准备提交。

  2. 如果你不想将一个未跟踪的文件或已修改的文件纳入版本管理,你可以选择不使用 git add 命令,或者使用 git reset 命令来取消已经添加到暂存区的文件。取消后,文件会回到红色状态,表示它未被跟踪或未被修改。

  3. 但是对于我们日常开发来说,我们创建一个文件肯定是有用意的,一般都希望该文件被提交上去,所以我们一般都选择添加文件,这样才能通过添加到暂存区,再到本地库最终推送到远程仓库中。

白色、蓝色文件名实例

比如这里我删除了md文件中的其中一行,md文件的文件名由白色转为了蓝色

该文件一般在该项目已经提交到本地库中后,我们准备开发新的功能时才会出现,也就是我们修改了当前已经存在于本地库中的文件,该文件就会被转化成蓝色文件。因为该文件已经被Git版本管理过了,所以可以直接提交到本地库。

总结:

  1. 蓝色文件可以直接提交到本地库中,因为其已经被Git版本管理了
  2. 蓝色文件可以简单认为就是白色文件被修改后的文件
暂存区

经过前面的内容,大家多少应该可以感觉到,暂存区其实是我们看不见、摸不着的存在,在暂存区中存在的文件一般是绿色和蓝色文件,也就是我们已经使用git add命令添加的文件。

当我们开发完毕一个新的功能后,我们就会准备将这次修改记录提交到本地仓库,这时候使用git commit命令就可以将暂存区中的文件提交到本地仓库中。

提交实例

在该实例中,我们删除了md文件的其中一行(可以看到changes一栏中是蓝色文件,如果你把一个新的文件也添加到暂存区的话就是前文提到的绿色文件),这里我们要在下方框中填写相关介绍,以便帮助其他团队成员或日后的自己知道这次的提交做了什么。

本地库

具体来说,本地库包含了开发者本地完整的提交历史和所有的本地分支,本地库中的提交记录是暂存区通过执行git commit后得来的。

这里要注意本地分支本地库的区别,本地分支只是本地库众多分支的其中一个分支,当然本地库也可以只包含一个本地分支(但是一般来说开发者不会这么做)。

本地分支实例

这里展示了本地库中的master分支,在这个分支中存在着该分支的提交历史和各种信息。

远程库

远程库是存放在代码托管平台(如Gitee、GitHub)上的仓库,本地库执行git push命令可将本地的提交记录推送到远程仓库中。

远程分支远程库的区别同本地分支本地库的区别一样

远程分支实例

同上本地分支实例。

需要注意的是,由于我们在团队开发中涉及到多人的共同协作,因此每个人都可以向远程仓库中推送自己的代码,也就意味在当你在开发新的代码时,远程仓库可能已经发生了变动,那么远程分支也就不能实时和远程仓库的提交记录保持同步了,这时我们需要使用git fetch命令,将远程仓库的提交记录拉取到的远程分支中。

总结

通过对于工作区域的认识,大家想必已经了解了一个文件如何从工作区一步步提交到远程仓库中,当然这里存在着很多操作中的细节,如切换分支,合并来自其他分支的结果等,而我们是使用IDEA结合Git实现版本管理,同样存在着如何具体使用的问题。由于本篇只讲理论,就不过多介绍了,本系列将会继续更新下去,大家敬请期待~

系列篇章:

  • 配置篇(已更)
  • 基础篇(已更)
  • 实战篇(TODO)
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/k123456kah/article/details/134866567

Java开发必会Git分布式版本控制系统实战篇-爱代码爱编程

一、创建SpringBoot项目 首先在idea中快速创建一个SpringBoot项目,然后我们将代码托管至Github上面。 1、pom.xml文件依赖、很简单的web项目依赖 <dependencies> <dependency> <groupId>org.springframework

【基础篇】Git基本操作及IDEA操作Git-爱代码爱编程

大家好,我是200,我又来了! 知识背景 问题:“在工作开发代码中,一个项目可能是由多个人去完成的,但是如果大家都在本地存放代码去开发的话,这种就可能会产生冲突,并且无法进行统一管理,导致开发困难。” 目前常用解决方案:SVN、Git SVN:SVN是集中式管理工具,也就是说如果SVN挂了,就什么都做不了了,所以这就是集中式管

最全Git使用总结(包括在IDEA中实战使用Git教程)(含理论和实战)-爱代码爱编程

目录 1Git简介和安装 1.1 git介绍 1.2 git的优势 1.3  Git的安装 1.4 git协作方式 2 Git工作原理 2.1 概念介绍 2.2 git 工作流程 2.3 本地仓库远程仓库联系​编辑  2.4 Git创建版本库/初始化 2.5 git底层原理 2.6 git的文件管理机制 3 在GitHub上创建远

面向新手的git实战教程_git 模拟实战-爱代码爱编程

嗨!我是团子,大家好久不见呀~ 记得之前在网上学习git相关知识时,看到的文章大部分都是讲解git的基本命令有哪些,用处是什么,但是自己真正上手使用git时,仍然无从下手。 所以今天就想从初始化一个git仓库开始

docker 入门第一篇 安装docker desktop并结合springboot在idea中应用_docker desktop java环境搭建-爱代码爱编程

🌹作者主页:青花锁 🌹简介:Java领域优质创作者🏆、Java微服务架构公号作者😄 🌹简历模板、学习资料、面试题库、技术互助 🌹文末获取联系方式 📝 往期专栏回顾 专栏描述Java项目实战介绍Java组

git实战篇,教你如何使用git可视化工具_github绿色按钮可视化操作-爱代码爱编程

系列文章目录 手把手教你安装Git,萌新迈向专业的必备一步 GIT命令只会抄却不理解?看完原理才能事半功倍! 快速上手GIT命令,现学也能登堂入室 GIT实战篇,教你如何使用GIT可视化工具 系列文章目

mac idea 自动补全mybatis sql语句-爱代码爱编程

导航 Mac IDEA 自动补全mybatis sql语句一、点击IDEA 右侧Database选项二、选择添加对应数据库三、输入数据库信息和方案四、输入数据库信息和方案五、成功 Mac IDE

【idea结合git实现项目管理实战】三、实战篇-爱代码爱编程

IDEA结合Git实现项目管理实战——实战篇 前言 本系列将结合我个人参与团队协作开发项目的经验来介绍如何使用IDEA结合Git实现项目管理,因此可能与真正的企业开发协作存在差异,且文章所涉及的解析可能存在个人理解

jetbrain | idea的启动logo替换成可爱的vtuber-爱代码爱编程

看了这个,好可爱 【上Github热榜了!当编程语言的Logo变得可爱起来~】  又看了这个 光速整活,强啊 看到很多人整IDEA的logo包括我自己,都不是特别方便的搞,我就直接把文件放在绑定资源里直接下吧 然后直接找到本体的安装文件夹下找到lib文件夹 IntelliJ IDEA Ultimate\lib 然后找到jar

idea2023的激活与安装-爱代码爱编程

IDEA2023是一款功能强大的集成开发环境(IDE),被广泛用于Java开发和其他编程语言开发。它提供了丰富的功能和工具,可以帮助开发人员更高效地编写、调试和测试代码。下面是关于IDEA2023的激活和安装的详细步骤和说明,全文约一万字。 第一部分:激活 第一步:下载安装包 首先,你需要下载IDEA2023的安装包。你可以在官方网站上找到适用于你操作系

【idea结合git实现项目管理实战】一、配置篇_idea git 插件-爱代码爱编程

IDEA结合Git实现项目管理实战——配置篇 前言 本系列将结合我个人参与团队协作开发项目的经验来介绍如何使用IDEA结合Git实现项目管理,因此可能与真正的企业开发协作存在差异,且文章所涉及的解析可能存在个人理解

2-爱代码爱编程

前言 通过2-2. SpringBoot API开发详解 --SpringMVC注解+封装结果+支持跨域+打包,我们实现了期望的API开发,打包了一个jar包,发布到DEV环境上供前端联调,其实,在实际的项目开发中,是会涉