Git的理解以及在IDEA中的使用

news2024/11/28 17:44:52

什么是版本控制

版本控制是指记录一段时间内对一个文件或一组文件的更改的系统,称为“版本”。换句话说,这些版本将帮助您跟踪代码/项目中的更改,如果需要,还可以撤消这些更改。

当处理较大的项目时,这种能够比较、区分和还原特定项目的两个版本之间的更改的功能变得非常有用。较大的项目意味着更多的人使用相同的代码工作,这增加了冲突的机会。使用版本控制,您可以轻松防止这些冲突。

该控制代码版本控制的系统称为版本控制系统(VCS)。为了获得更好的画面,您可以将其视为数据库。在此数据库中,VCS会获取整个项目的快照并将其存储为版本。现在,借助这些快照,您可以轻松比较版本并根据需要在版本之间进行切换。

什么是Git

Git是一个开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理。 也是Linus Torvalds为了帮助管理Linux内核开发而开发的一个开放源码的版本控制软件。

Git是您在本地系统上安装的版本控制软件。对于一个单独从事项目的个人而言,Git对您来说会是一个出色的软件。但是,如果您正在与一个大型团队一起合作一个项目,所有人都将在同一个项目上工作,但是你们每个人都将拥有同一项目的不同版本。

考虑下这种情况。您在计算机上的项目目录中进行了更改,并且想要将这些更改发送给协作者。此外,您希望将所做的更改直接显示在计算机的项目目录中。

在处理项目时,与团队成员保持一致对于避免任何类型的冲突都是非常重要的。那么,您将如何做呢?好吧,Git会处理所有这一切,但是这里唯一的条件是每个团队成员必须在其系统上安装Git。

Git也被称为分布式版本控制系统,这意味着使用Git,您可以将您以及他人的更改推到别人的计算机上。

在当今市场上,Git是使用最广泛且使用最广泛的现代VCS。它也已经非常成熟,并且是一个维护良好的开源项目。由Linux内核的创建者Linus Torvalds于2005年开发。

各种软件项目,包括商业软件和开源软件,都完全依赖Git进行版本控制。那么,Git与其余的有什么不同?

Git与其他任何VCS(例如Subversion(SVN),Mercurial,TFS,Perforce,Bazaar等)的主要区别在于Git存储数据的方式。在其他系统中,信息存储为基于文件的更改的列表,这也称为基于增量的版本控制。但是对于Git,它以微型文件系统快照流的形式存储其数据。

使用Git,无论何时提交或保存项目状态,都会获取当前文件状态的快照并为其存储引用。如果未进行任何更改或更新,则Git将存储一个到先前已经存储的文件的链接

什么是GitHub

Git是一个跟踪代码更改的版本控制系统,而GitHub是一个基于Web的Git版本控制存储库托管服务。它提供了Git的所有分布式版本控制和源代码管理(SCM)功能,并提供了一些自己的特性。对于开发人员而言,这是他们可以在其中存储项目并与志趣相投的人建立联系的地方。您可以将其视为“代码云”

因此,基本上,GitHub是一个可以存储相同工作目录或存储库的地方。从字面上看,它是Git存储库的中心,您可以在GitHub上创建一个免费帐户,就可以在其中使用它。这些帐户具有丰富的存储空间,您可以在其中存储您的存储库并建立适当的配置文件来保存所有最重要的项目。

默认情况下,存储库是公共的,每个人都可以看到您的代码。但是,如果您愿意,也可以将其设为私有。而且,GitHub与Git合作。

Git是命令行工具,而GitHub是基于Web的图形界面,可为您提供访问控制、基本任务管理工具以及一些协作功能

此外,GitHub可以用各种编程语言托管您项目的源代码,并跟踪每次迭代所做的更改。GitHub的功能并不止于此。它提供以下三个非凡功能,使其功能更加强大:

  • fork:或通常称为fork。当您没有正确的访问权限时,这就是从一个用户的帐户复制存储库。因此,您可以复制它并在您自己的帐户下对其进行修改。

  • pull:对复制的代码进行更改,并希望与其原始所有者共享时,可以向其发送一个称为“ pull request”的通知。

  • merge:现在修改代码的原始所有者,如果他们发现与您的更改相关,则只需单击一个按钮,就可以将您在存储库中所做的更改与原始存储库合并。

如果你的pull请求被接受,那么您会在原始网站上获得信誉,并显示在用户个人资料中。就像简历一样,可以帮助GitHub项目维护者确定您的声誉。因此,GitHub上的人员和项目越多,项目维护者看到其贡献者潜力的能力就越高。这鼓励年轻的开发商和项目在该行业中获得更大的发展。

Git、GitHub、Gitee的区别

git与GitHub

1、主体不同: github:是一个面向开源及私有软件项目的托管平台,因为只支持git作为唯一的版本库格式进行托管。

git:是一个开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理。

2、功能不同:

github:以托管各种git库,并提供一个web界面,但与外国的SourceForge、GoogleCode或中国的coding的服务不同,GitHub的独特卖点在于从另外一个项目进行分支的简易性。

git:开发者可以提交到本地,每个开发者通过克隆(gitclone),在本地机器上拷贝一个完整的Git仓库。

GitGitHub
1.它是一个软件1.这是一项服务
2它本地安装在系统上⒉它托管在Web上
3.它是一个命令行工具3.提供图形界面
4.它是一种工具,用与管理对git存储库中的文件进行不同版本的编辑功能4.这是一个上传Git存储库副本的空间
5.它提供了诸如版本控制系统源代码管理之类的功能5.它提供了Git的功能(如VSC和源代码管理),并添加了一些自己的功能

GitHub和Gitee

 Gitee和GitHub是两个代码托管平台,他们的主要区别在于:
 ​
 地理位置:Gitee是国内的代码托管平台,GitHub是国外的代码托管平台。
 ​
 公开项目数量:GitHub的公开项目数量更多,因此它更适合用于开源项目。
 ​
 限制:Gitee在国内没有任何限制,而GitHub受到国外网络的限制。
 ​
 用户数量:GitHub的用户数量更多,因此它在开发者社区中更受欢迎。
 ​
 功能:Gitee和GitHub的功能大致相同,但GitHub更加强大。
 ​
 社区:GitHub的开发者社区更加活跃,因此如果需要寻求帮助或提供帮助,可以考虑使用GitHub

Git:分布式版本控制中心,Git就像是多对多的关系,每一个终端都是一个仓库,客户端并不只拉取最新版本的代码,而是把原始的代码仓库完整地镜像下来。每一次的拉取操作,实际上都是一次对代码仓库的完整备份;

Github与Gitee是同一类,在云端。区别是Github是国外的,Gitee是国内的。二者的使用需要借助Git。

Gitee和GitHub的区别GitHub是全英文并且用户基数多,知名的库也多,而Gitee全是中文,而且大部分用户都是国人,优秀的库相对于GitHub也少,在国内访问Github偶尔会有不稳定情况,而Gitee不会出现不稳定情况。

GitHub 是一个面向开源及私有软件项目的托管平台,因为只支持 Git 作为唯一的版本库格式进行托管,故名 GitHub。GitHub 于 2008 年 4 月 10 日正式上线,除了 Git 代码仓库托管及基本的 Web 管理界面以外,还提供了订阅、讨论组、文本渲染、在线文件编辑器、协作图谱(报表)、代码片段分享(Gist)等功能。目前,其注册用户已经超过 350 万,托管版本数量也是非常之多,其中不乏知名开源项目Ruby on Rails、jQuery、python 等。

  Gitee 提供免费的 Git 仓库,还集成了代码质量检测、项目演示等功能。对于团队协作开发,Gitee 还提供了项目管理、代码托管、文档管理的服务,5 人以下小团队免费。

1.Git 是一个开源的分布式版本控制系统,简单来说就是可以通过使用git去管理项目。我们可以将项目存放在一个仓库中,通过git去管理这个仓库,以此来达到管理项目的目的。

2.GitHub是一个基于git的代码托管平台,在github上可以建立仓库用于存放项目。

3.Gitee同样也是一个基于git的代码托管平台,不过gitee与github不同之处在于,它是国内的托管平台,因此访问的速度很快,推荐大家使用gitee。

下载安装Git

这里提供两个下载地址,分别是官网地址国内镜像地址,推荐使用国内镜像地址去下载,下载速度快,而且版本与官网同步,也有官网目前的最新版本。

官网下载:Git for Windows(进入速度慢,可能需要等待。)

 

 

国内镜像下载:CNPM Binaries Mirror

 

 

下载完成后,进行安装。

双击exe应用程序,选中安装路径即可。其余步骤均可点击Next进行下一步。

 直到👇这个界面,安装完成:

IDEA中配置Git

 打开设置,选择版本控制--->Git,然后找到git安装目录中的``git.exe``程序。

Gitee的使用

官网地址:Gitee - 企业级 DevOps 研发效能平台

 

 

注册登录账号。然后可以新建仓库,进而操作。不过,可以在IDEA中去完成这一些步骤。

IDEA中使用

IDEA版本: 2022.3.3 汉化版。

搜索Gitee插件,安装。然后重启IDEA即可。

 

 

添加Gitee账号:

 

 

分享项目 

将项目分享到gitee:

 

 

设置仓库名字

 

 

点击share分享。

此时浏览器上打开gitee账号,可以发现分享成功。

 

 

更新项目

上传完项目之后,如果对项目源码进行了更新,则需要再次推送。

比如,项目中又新增了一个类,则该类会以绿色显示。

代码编写完毕之后,需要推送到gitee。

注意:下图中务必依次点击: ‘更新项目’----->'提交'------>‘推送’。

 

 

点击推送:

 

 

这个时候,打开gitee浏览则会发现新增内容。

小组团队开发

打开仓库,选择管理,添加团队成员即可。

 

 

成员拉取项目

 

 

或者:

 

 

 

点击clone进行克隆即可。

数据库迁移

通过navicat生成.sql文件。

 

将sql文件放入项目中:

推送到码云上:

 

 

团队成员可以通过拉取,在本地数据库执行sql脚本,从而达到数据库整体迁移的效果。

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

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

相关文章

“RAID0 vs RAID1 vs RAID5 vs RAID6 vs RAID10:哪种RAID级别最适合你的需求?“

概要: RAID(Redundant Array of Independent Disks)是一种数据存储技术,可以将多个硬盘组合起来以提高性能、可靠性和容错能力。下面是几种常见的RAID级别,以及它们的用途和特点。 目录 RAID 0RAID 1RAID 5RAID 6RAID…

navicat 怎么导入运行bak文件,详细教程

文章目录 一、新建数据库,点击高级设置访问权限二、点击SQL Server备份三、右击空白,点击从文件还原四、找到备份的bak文件五、 点击“高级”选项六、然后点击 生产SQL,最后点 还原 一、新建数据库,点击高级设置访问权限 二、点击…

Opencv-python 将图片中某段HSV范围内的所有像素去除,用白色替换

文章目录 前言一、效果二、代码1.思路2.代码解释 总结 前言 本次实验要求将模拟飞行座舱图像中的HUD绿色字体去掉,并且用白色来替代,最终输出没有绿色字体的图片,用于下一步的某种图像算法的输入。 一、效果 二、代码 1.思路 将一张图片中的…

经验教训:微服务设计时的五条宝贵经验

微服务架构的新挑战 在著名软件著作《人月神话》中提到,软件世界没有“银弹”,这句话当然适用于架构领域,随着从单体架构过渡到微服务架构,因为将原有系统打散,给系统增加了许多不稳定因素。 单体架构向微服务架构转变…

【服务器数据恢复】断电导致RAID无法找到存储设备的数据恢复案例

服务器数据恢复环境: HP EVA存储,6块SAS硬盘组建的raid5磁盘阵列。上层操作系统是WINDOWS SERVER。该存储为公司内部文件服务器使用。 服务器故障&分析: 在遭遇两次意外断电后,设备重启时raid提示“无法找到存储设备”。管理员…

值得推荐收藏的 9个免费PDF转PPT的方法

随着现在工作和学习越来越多涉及到电子文件,PDF格式已经成为了一种非常重要的文件格式。但有时候需要将PDF文件转换为PPT格式,因为PPT格式更适合用于演示和公开演讲等场合。而转换PDF文件到PPT格式则需要使用专用工具。以下是9个免费的PDF转PPT的方法介绍…

蓝牙耳机都能打电话吗,分享几款通话效果不错的骨传导耳机

骨传导耳机的兴起是近几年来才出现的新概念,骨传导耳机也是近几年来才开始流行起来,在我看来骨传导耳机的兴起是科技进步的产物。随着蓝牙耳机技术和设备的发展,蓝牙耳机也越来越普及,但是也给用户带来了很多困扰。而骨传导耳机就…

好用的电容笔有哪些推荐?性价比高的触控笔

电容笔的选购对新手来说难度很大,看到网友们都在讨论电容笔什么牌子的好用,电容笔怎么挑选?小编今天也来详细解答这个问题,盘点四款好用的平价电容笔,如果你想知道性价比高电容笔推荐哪些,那这篇文章一定不…

什么是 Vue 的片段(Fragment)?如何使用片段?

什么是 Vue 的片段(Fragment)?如何使用片段? 在 Vue 2.6.0 版本中,新增了一个特性:片段(Fragment)。片段是一种特殊的组件,可以让开发者在不增加额外节点的情况下渲染多…

2023年第二届计算与人工智能国际会议(ISCAI 2023)

会议简介 Brief Introduction 2023年第二届计算与人工智能国际会议(ISCAI 2023) 会议时间:2023年10月13 -15日 召开地点:中国上海 大会官网:www.iscai.org 2023年第二届计算与人工智能国际会议(ISCAI 2023)将围绕“计算与人工智能”的最新研究…

ETC人车关系查询-ETC人车关系查询api接口

接口地址: https://登录后显示/api/189/363(支持:http/https)) 接口页面:https://www.wapi.cn/api_detail/189/363.html 网站地址:https://www.wapi.cn 接口简介:核验指定人员/企业是否是指定车辆的 ETC 开户人、车辆所有人或 E…

【c/c++】属于程序员的浪漫,基于easyx.h图形库实现3D Heart

文章目录 😏专栏导读🤖文章导读🙀一、easyX图形库基本介绍?1、easyX的原理:2、easyX的安装🙀3D Heat源码描述 😳3D Heat效果展示总结 😏专栏导读 👻作者简介:…

ssm+java汽车销售分析与管理系统

此次设计一款汽车销售分析与管理系统,能够对当前销售的车辆的日销售、季度销售以及年度销售进行统计分析、对于车辆的入库出库进行了准确的信息录入。对于销售人员的销售情况进行登记和统计,能够对整个店面的财务情况、盈利情况进行统计。同时对于以上数…

精选|Dubbo异步化实践

1 背景 从Apach Dubbo的官网了解到从 2.7.0 版本开始,Dubbo 的所有异步编程接口开始以CompletableFuture为基础,Dubbo接口异步化能够极大地提高接口性能,降低接口依赖调用之间的阻塞,同时了解到我们公司大部分应用使用的是同步rp…

微信小程序 地图map组件 SDK 并 实现导航

说明 本文使用uniapp使用map组件作为示例 效果预览 主要实现: 地图上搜索关键字地址对地址设置标记点位置授权被拒后,重新触发授权的处理逻辑实现获取当前位置,计算目标地址与当前位置的距离触发对选中的信息展示弹窗实现开始导航操作 需要源…

无人机航拍高度与地面采样距离

无人机航拍高度与地面采样距离 1.无人机航拍高度与地面采样距离的关系 为搞清无人机航拍高度与地面采样距离的关系,首先需要了解像素与像元之间的细小差别(个人理解)。像素偏重于图片描述,也就是常说的一张图片像素是多少。像元…

谷粒商城学习笔记(一):分布式基础概念

分布式基础概念 1. 微服务2. 集群&分布式&节点3. 远程调用4. 负载均衡5. 服务注册/发现&注册中心6. 配置中心7. 服务熔断&服务降级8. API网关 1. 微服务 微服务架构风格,就是把一个单体架构按照业务拆分成多个服务模块,每个模块之间独立…

C标准库——字符串函数反汇编分析

1、前置概念补充 test:逻辑与,如果是1,zf就是1,如果是0,zf就是0 可以还原成等价的高级语言,理解代码逻辑,但是不一定是源代码 大写的A:41,小写a:61 asci…

manacher——马拉车算法(图文详解)

文章目录 简要介绍实际应用算法详解 简要介绍 马拉车算法,Manacher‘s Algorithm 是用来查找一个字符串的最长回文子串的线性方法,是一个叫Manacher的人在1975年发明的,这个方法的最大贡献是在于将时间复杂度提升到了线性O(N)。 实际应用 刷…

ChatGPT让沟通更智能、更便捷

ChatGpt是最近引起强烈关注的一种技术,它可以实现聊天机器人,为使用者解决复杂的信息获取和学习任务。但他也不仅仅是一个聊天机器人,它是一种基于深度学习算法的自然语言生成模型,由OpenAI公司开发。它可以模拟人类的对话方式&am…