Git系列之Git入门级(带你走进Git的世界)

🎉🎉欢迎来到我的CSDN主页!🎉🎉
🏅我是君易--鑨,一个在CSDN分享笔记的博主。📚📚
🌟推荐给大家我的博客专栏《Git实战开发》。🎯🎯
🎁如果感觉还不错的话请给我关注加三连吧!🎁🎁
💖期待你的加入,一起学习,一起进步!💖💖
前言
想必大家在之前学习或者了解过SVN的相关知识吧,SVN是Subversion的简称,是一个开放源代码的版本控制系统。它采用分支管理系统的高效管理,用于多个人共同开发同一个项目,实现共享资源,最终集中式的管理。但是SVN在一些使用上有所限制,不是很有利于开发人员提高开发效率以及团队协作。今天要与老铁们分享的是和SVN有着共同用处的——Git。
一、Git简介
1. 概述
Git是一个开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理。Git是Linus Torvalds为了帮助管理Linux内核开发而开发的一个开放源码的版本控制软件。
2. 特点
| 特点 | 说明 |
| 分布式 | Git是分布式版本控制系统,允许在多个本地仓库中同时进行开发,并且可以轻松地与远程仓库进行协作。 |
| 高效性 | Git通过直接记录快照和索引文件的方式,使得版本控制更加高效,特别是对于大型项目。 |
| 灵活性 | Git提供了丰富的命令行选项和功能,可以根据个人习惯和项目需求进行定制。 |
| 可靠性 | Git使用SHA-1哈希算法来标识每个文件和提交,确保了数据的完整性和可追溯性。 |
| 可扩展性 | Git可以轻松地扩展和定制,可以通过插件和其他工具来增强其功能。 |
3. 与SVN相比二者的区别
虽然二者都是版本控制系统,但是本质上还是存在一定的区别,区别如下:
- 版本控制系统不一样:Git是分布式的,允许在多个本地仓库之间进行开发,并且可以在不需要互联网连接的情况下进行版本控制;SVN是集中式的版本控制系统,需要在服务器上维护一个中央版本库,所有客户端都需要与该服务器进行通信。
- 存储方式不同:Git将每个文件的修改作为差异存储,而不是像SVN那样保存整个文件的完整历史记录。
- 分支管理方式有差异:Git的分支管理更加灵活,Git鼓励开发者在本地创建和合并分支,而不是像SVN那样在远程服务器上执行这些操作。
- 数据传输上有差异:Git使用SHA-1哈希算法来标识每个文件和提交,这确保了数据的完整性和可追溯性。并且Git还支持校验和机制,可用于验证文件在传输过程中的完整性。
- 社区支持:由于Git的流行度和使用广泛性,社区对Git的支持通常比SVN更广泛。有许多工具、插件和集成可以帮助开发人员更高效地使用Git。
二、Git的安装
1. 注册一个gitte账号
首先我们要去官网中注册一个Gitee账号用于我们的团队项目开发使用。
官网网址:
Gitee - 基于 Git 的代码托管和研发协作平台
注册的步骤咱就不一一说明了,自行注册好。
2. 在Window中安装Git
注意事项:
- 版本要求:Git-2.22.0-64-bit.exe或以上版本
- 安装路径:请不要安装在C盘(win10会有权限问题),建议选择“D:\tools\Git”

以下是Git安装成功的标准

三、Git常用命令使用
Git的常用命令使用我们将以人物角色的方式去讲解命令的使用,使其融入使用场景。
1. 组长(身份1)
1.1 搭建ssm环境,并且将项目推送到gitee码云上
配置全局
进入gitee官网并且登陆,新建一个仓库为开源。

在磁盘中新建一个文件夹用于存放仓库,在创建一个文件夹代表是组长使用的

进入组长身份的文件夹中,右击点击Git Base Here选项进入到命令窗口,然后执行相关命令。

指令:
配置Git全局
- git config --global user.name "yangxin"
- git config --global user.email "2081718134@qq.com"

这两个命令执行完之后会在系统用户路径下生成一个.gitconfig文件,文件内容如下,是根据你执行的代码生成的。

创建仓库
指令:
- mkdir yxwork 创建新建夹
- cd yxwork 进入到文件夹中
- git init 标记为Git托管的仓库
执行完git init代码后会在新创建的文件夹中生成一.git的隐藏文件


接下来就是测试是否被Git托管
指令:
- touch README.md ---->创建一个文件
- git status ----->查看文件状态
- git add . ----->(.代表所有提交的文件)托管
- git commit -m "first commit" ------>提交至本地仓库,并说明注释(“”中是注释)
- git remote add origin https://gitee.com/yangxinxx/yxwork.git ----->设置远程仓库地址
- git push -u origin "master" ------>推送文件


下述代表文件提交到本地仓库了

下面是将远程仓库与本地仓库绑定,并且将本地仓库文件推送给远程仓库

推送玩之后,刷新新建仓库的网页

上述图片说明远程与本地仓库绑定成功并且打通
搭建环境
将项目的scr文件与pom文件拖至指定文件夹中

将配置环境文件推送给远程仓库

推送完之后再次刷新网页

1.2 组长修改pom文件依赖
当组长导入一个新的依赖,并且新上传了一个文件。将其推送一下

刷新网址查看,可以点击pom.xml查看我们是否修改依赖

2. 组员(身份二)
2.1 连接组长的仓库
复制组长创建仓库的网址

在zuzhang文件的同级目录下创建一个zuyuan文件夹,然后进入git命令窗口克隆仓库


2.2 组员修改同一依赖
当组员和组长修改同一依赖的时候,修改的版本不同,没有及时交流沟通出现的问题及解决方法。

组员更新资源之后
指令:
- git pull ---->更新

当我们再次去查看pom文件时,发现是组员修改后的文件了。

此时当组员修改依赖版本后,并推送,也没和组长说。当组长将原来的版本也进行修改后推送。


组长更新代码,再去查看pom文件。

组长与组员线下沟通,可以删除其一也可以二者都要。

本期分享到此结束
三连加关注哦
感谢老铁们

相关文章:
Git系列之Git入门级(带你走进Git的世界)
🎉🎉欢迎来到我的CSDN主页!🎉🎉 🏅我是君易--鑨,一个在CSDN分享笔记的博主。📚📚 🌟推荐给大家我的博客专栏《Git实战开发》。🎯🎯 &a…...
GPU架构与计算入门指南
1比较CPU与GPU 首先,我们会比较CPU和GPU,这能帮助我们更好地了解GPU的发展状况,但这应该作为一个独立的主题,因为我们难以在一节中涵盖其所有的内容。因此,我们将着重介绍一些关键点。 CPU和GPU的主要区别在于它们的…...
功能测试转自动化测试好不好转型?
手工测试做了好多年,点点点成了每天必须做的事情。但是随着自动化测试趋势的日渐明显,以及受到薪资、技能的双重考验,掌握自动化测试成为了必备技能。 手工转自动化测试,不是一蹴而就的。“预先善其事,必先利其器”&a…...
微软surface laptop禁用触摸屏(win10、设备管理器)
参考链接: 在屏幕中启用和禁用触摸屏Windows 设置如下...
冒泡排序算法原理和代码实现,就是这么简单!
冒泡排序,是比较简单的一种排序算法。 它的命名源于它的算法原理:重复的从前往后(或者从后往前),依次比较记录中相邻的两个元素,如果他们顺序错误就把它们交换过来,直到没有再需要交换的元素&am…...
[工业自动化-6]:西门子S7-15xxx编程 - PLC系统硬件组成与架构
目录 一、PLC系统组成 1.1 PLC 单机系统组成 1.2 PLC 分布式系统 二、PLC各个组件 2.1 PLC上位机 2.2 PLC主站:PLC CPU控制中心 (1)主要功能 (2)主站组成 2.3 PLC分布式从站: IO模块的拉远 (1&am…...
pinpoint监控tomcat应用,页面显示No data collected
pinpoint安装部署教程大家都可以搜到。这里就不说了。单说一下 页面没有数据的情况。 部署环境,pinpoint安装部署在A服务器上。现在是在C、D、E、F……linux机器上安装pinpoint-agnet 1. 将文件 pinpoint-agent-1.8.5.tar.gz 上传到 服务器C、D、E、F…… 2. 解压…...
【左程云算法全讲4】前缀树、非比较排序
系列综述: 💞目的:本系列是个人整理为了秋招面试的,整理期间苛求每个知识点,平衡理解简易度与深入程度。 🥰来源:材料主要源于左程云算法课程进行的,每个知识点的修正和深入主要参考…...
微头条项目实战:新增RequestHeader注解
1、RequestHeader package com.csdn.mymvc.annotation; import java.lang.annotation.*; Target(ElementType.PARAMETER) Retention(RetentionPolicy.RUNTIME) Inherited public interface RequestHeader { }2、DispatcherServlet package com.csdn.mymvc.core; import com.csd…...
E云管家个微协议框架--新版本的利器
在互联网时代,高效、可靠的互联网协议对于实现稳定、安全的数据传输至关重要。E云管家作为一项创新性的IPAD协议构建工具,基于IPAD8.0.37协议为开发者提供了强大而灵活的功能,使他们能够轻松构建高效的通信协议。本文将介绍E云管家的主要特点…...
百度上线“文心一言”付费版本,AI聊天机器人市场竞争加剧
原创 | 文 BFT机器人 百度不愧是我国AI技术领域的先行者,每年致力于人工智能领域取得技术产品的突破和创新。据爆料称,百度的文心一言有突破了新境界,开创了文心大模型4.0会员版本。从线上的to C产品到试水商业化,百度都是争先走…...
代码随想录算法训练营第四十七天丨 动态规划part10
121. 买卖股票的最佳时机 思路 动态规划 动规五部曲分析如下: 确定dp数组(dp table)以及下标的含义 dp[i][0] 表示第i天持有股票所得最多现金 ,这里可能有疑惑,本题中只能买卖一次,持有股票之后哪还有…...
微前端:quankun
零: 前言 微前端可以将大应用拆分功能独立的微应用,可独立开发部署, 每个微应用可以采用自己的技术栈,这样更好维护和拓展。微前端也会存在跨域 权限控制 数据共享 性能(页面加载时间) 安全 多团队协作(一个团队负责一个页面或模…...
CSDN每日一题学习训练——Java版(克隆图、最接近的三数之和、求公式的值)
版本说明 当前版本号[20231109]。 版本修改说明20231109初版 目录 文章目录 版本说明目录克隆图题目解题思路代码思路参考代码 最接近的三数之和题目解题思路代码思路参考代码 求公式的值题目解题思路代码思路参考代码 克隆图 题目 给你无向 连通(https://baike.baidu.com…...
XOR Construction
思路: 通过题目可以得出结论 b1^b2a1 b2^b3a2 ....... bn-1^bnan-1 所以就可以得出 (b1^b2)^(b2^b3)a1^a2 b1^b3a1^a2 有因为当确定一个数的时候就可以通过异或得到其他所有的数,且题目所求的是一个n-1的全排列 那么求出a的前缀异或和arr之后…...
K8S容器持续Terminating无法正常关闭(sider-car容器异常,微服务容器正常)
问题 K8S上出现大量持续terminating的Pod,无法通过常规命令删除。需要编写脚本批量强制删除持续temminating的Pod:contribution-xxxxxxx。 解决 获取terminating状态的pod名称的命令: # 获取media命名空间下,名称带contributi…...
Spring 循环依赖
文章目录 内容总结循环依赖 内容总结 循环依赖 循环依赖只存在于 Spring 中, 是因为 Spring 创建 Bean 的流程中, 依赖注入阶段, 会先从单例池中找, 没有再从定义池中找, 针对定义池中找到的候选项会通过 getBean 创建其单例并缓存到单例池, 此机制导致了存在循环依赖的问题.…...
MySQL 8.0.13升级到8.0.35记录 .NET
1、修改表结构的字符集 utf8 修改成 utf8mb4 utf8_general_ci 修改成 utf8mb4_0900_ai_ci 注:所有地方都要替换。 否则会报错误提示:Character set utf8mb3 is not supported 下面是.NET环境升级遇到的问题 2、MySQL Connector Net 8.0.13 在程…...
flink udtaf 常年不能用
[FLINK-32807] when i use emitUpdateWithRetract of udtagg,bug error - ASF JIRA flink1.18发布的时候 他都显示未解决 但是文档上一直有udtaf...
路由汇总的四要点
1.是基于链路级的还是进程级的? RIP和eigrp都是基于接口的链路级汇总,而OSPF是基于进程的 2.汇总路由什么时候消失? 最后一条明细路由消失的时候,汇总路由消失。 3.汇总之后,汇总路由被通告,本地是否会产生一条指向NULL接口的…...
深度学习在微纳光子学中的应用
深度学习在微纳光子学中的主要应用方向 深度学习与微纳光子学的结合主要集中在以下几个方向: 逆向设计 通过神经网络快速预测微纳结构的光学响应,替代传统耗时的数值模拟方法。例如设计超表面、光子晶体等结构。 特征提取与优化 从复杂的光学数据中自…...
docker详细操作--未完待续
docker介绍 docker官网: Docker:加速容器应用程序开发 harbor官网:Harbor - Harbor 中文 使用docker加速器: Docker镜像极速下载服务 - 毫秒镜像 是什么 Docker 是一种开源的容器化平台,用于将应用程序及其依赖项(如库、运行时环…...
JVM垃圾回收机制全解析
Java虚拟机(JVM)中的垃圾收集器(Garbage Collector,简称GC)是用于自动管理内存的机制。它负责识别和清除不再被程序使用的对象,从而释放内存空间,避免内存泄漏和内存溢出等问题。垃圾收集器在Ja…...
Linux云原生安全:零信任架构与机密计算
Linux云原生安全:零信任架构与机密计算 构建坚不可摧的云原生防御体系 引言:云原生安全的范式革命 随着云原生技术的普及,安全边界正在从传统的网络边界向工作负载内部转移。Gartner预测,到2025年,零信任架构将成为超…...
[Java恶补day16] 238.除自身以外数组的乘积
给你一个整数数组 nums,返回 数组 answer ,其中 answer[i] 等于 nums 中除 nums[i] 之外其余各元素的乘积 。 题目数据 保证 数组 nums之中任意元素的全部前缀元素和后缀的乘积都在 32 位 整数范围内。 请 不要使用除法,且在 O(n) 时间复杂度…...
安卓基础(aar)
重新设置java21的环境,临时设置 $env:JAVA_HOME "D:\Android Studio\jbr" 查看当前环境变量 JAVA_HOME 的值 echo $env:JAVA_HOME 构建ARR文件 ./gradlew :private-lib:assembleRelease 目录是这样的: MyApp/ ├── app/ …...
AI病理诊断七剑下天山,医疗未来触手可及
一、病理诊断困局:刀尖上的医学艺术 1.1 金标准背后的隐痛 病理诊断被誉为"诊断的诊断",医生需通过显微镜观察组织切片,在细胞迷宫中捕捉癌变信号。某省病理质控报告显示,基层医院误诊率达12%-15%,专家会诊…...
JVM虚拟机:内存结构、垃圾回收、性能优化
1、JVM虚拟机的简介 Java 虚拟机(Java Virtual Machine 简称:JVM)是运行所有 Java 程序的抽象计算机,是 Java 语言的运行环境,实现了 Java 程序的跨平台特性。JVM 屏蔽了与具体操作系统平台相关的信息,使得 Java 程序只需生成在 JVM 上运行的目标代码(字节码),就可以…...
人机融合智能 | “人智交互”跨学科新领域
本文系统地提出基于“以人为中心AI(HCAI)”理念的人-人工智能交互(人智交互)这一跨学科新领域及框架,定义人智交互领域的理念、基本理论和关键问题、方法、开发流程和参与团队等,阐述提出人智交互新领域的意义。然后,提出人智交互研究的三种新范式取向以及它们的意义。最后,总结…...
七、数据库的完整性
七、数据库的完整性 主要内容 7.1 数据库的完整性概述 7.2 实体完整性 7.3 参照完整性 7.4 用户定义的完整性 7.5 触发器 7.6 SQL Server中数据库完整性的实现 7.7 小结 7.1 数据库的完整性概述 数据库完整性的含义 正确性 指数据的合法性 有效性 指数据是否属于所定…...
