Git的简单介绍与如何安装Git
文章目录
- 前言
- 一、初始git
- 1.git是什么
- 2.为什么要使用git(出现的问题)
- 3.git是如何解决问题的
- 二、git的安装与卸载
- 1.centos系统
- 2.ubuntu系统
- 3.windows
- 三、搭建git本地环境
- 1.创建git本地仓库
- 2.配置用户信息
- 总结
前言
本文简单引入git的相关内容。
一、初始git
1.git是什么
git是目前主流的版本控制器它可以控制电脑上所有格式的文件,例如doc, excel, dwg, dgn, rvt等。
当然,对于我们开发人员来说,最终要的是帮助我们管理软件开发项目中的源代码文件。
2.为什么要使用git(出现的问题)
用生活中常见的例子举例:
当我们完成一份毕业设计论文时,会将论文提交给课题老师进行审核,老师会对我们所提交的论文进行批注,并要求我们按批注修改论文。
在多次对论文进行修改的过程中,我们会产生多个版本的论文,可能会出现本次修改不符合预期,老师需要你提交之前的某次论文版本。如果每次的修改都是直接在同一份文档中进行,没有对之前的版本进行保存的话,此时就变得比较棘手,因此对文档版本的保存和管理尤为重要。
我们在开发过程中编写的源代码也是如此,只有对每次提交的版本进行保存和管理,才能在后续出现问题时及时查找到修改这部分代码的人员和修改的原因,方便我们对bug进行排查和修复。
3.git是如何解决问题的
为了方便我们管理不同版本的文档,版本控制器应运而生。通过版本控制器,我们可以便捷的了解到一个文本更替的历史,发展的过程。简单来说,它是一个可以记录工程中每一次修改和版本迭代的管理系统,同时也支持多人协同作业。
注意事项
版本控制器只能记录对文本的修改,例如你在test.c文档的第5行添加了一个’apple’的单词,将第6行的内容删除了,但它不能知道到程序最终实现的内容。
也就是,它只能跟踪文本文档的改动,例如TXT文件,网页,所有的程序代码。而图片,视频等二进制文件,也可以通过版本控制器进行管理,但是无法跟踪到文件的变化,只知道图片从100KB变为120KB,但具体修改的内容,版本控制器无法知道。
二、git的安装与卸载
1.centos系统
sudo yum install git -y #安装git
git --version #查看git的安装版本
2.ubuntu系统
sudo apt-get install git -y #安装git
git --version #查看git的安装版本
3.windows
windows系统下安装git
三、搭建git本地环境
1.创建git本地仓库
仓库是进行版本控制的文件目录,因此,我们要对文件进行版本控制需要先创建一个仓库。
创建git本地仓库的命令为git init(此命令需要在对应工作文件目录下执行),例如:
mkdir git_test #创建工作代码的目录git_test,这个目录名是自定义的
cd git_test #进入目录下
git init #初始化git
我们可以查看执行git init命令后多出来的这个隐藏目录.git的子目录:
.git目录是Git用于跟踪管理仓库的,用户不能手动修改其中的文件,否则会破坏本地的这个git仓库。
2.配置用户信息
在安装好git之后,需要用户设置自己的用户名和email地址,配置命令如下:
git config [--global] user.name "name" #配置[全局]用户名
git config [--global] user.email "email@xx.com" #配置[全局]用户email
#将name改为自己的名称
#将email@xx.com改为自己的邮箱地址即可
注意: --global是一个可选项,如果使用该选项,则这台机子上所有的git仓库都会使用配置的用户名和email。如果你希望在不同仓库中使用不同的name 或email,则不要使用–global选项(这时需要在对应的仓库目录下执行配置命令)
查看当前配置的命令为:
git config -l #查看当前git的用户配置
如果配置的信息有误,需要修改配置可以使用以下命令重置配置信息,再重新配置即可。
git config [--global] --unset user.name #重置用户名
git config [--global] --unset user.email #重置用户email
#重置全局的配置需要使用--global选项
可以参考下面配置举例,将用户名配置为全局的,则无法使用普通重置命令对用户名进行重置,只能重置全局用户名才可以:
总结
以上就是今天要讲的内容,本文介绍了git是什么,为什么要使用git,以及git的一些相关的基础概念。本文作者目前也是正在学习Git相关的知识,如果文章中的内容有错误或者不严谨的部分,欢迎大家在评论区指出,也欢迎大家在评论区提问、交流。
最后,如果本篇文章对你有所启发的话,希望可以多多支持作者,谢谢大家!
相关文章:
Git的简单介绍与如何安装Git
文章目录 前言一、初始git1.git是什么2.为什么要使用git(出现的问题)3.git是如何解决问题的 二、git的安装与卸载1.centos系统2.ubuntu系统3.windows 三、搭建git本地环境1.创建git本地仓库2.配置用户信息 总结 前言 本文简单引入git的相关内容。 一、初始git 1.git是什么 g…...
Linux vi/vim 编辑器:功能强大的文本处理工具
Linux vi/vim 编辑器:功能强大的文本处理工具 引言 Linux 系统中的 vi/vim 是一种功能强大的文本编辑器,它广泛应用于程序员、系统管理员和其他需要处理文本文件的用户群体中。vi 是 visual interface 的缩写,而 vim 则是 vi improved 的缩…...
计算机毕业设计Python电商品推荐系统 商品比价系统 电商比价系统 商品可视化 商品爬虫 机器学习 深度学习 京东爬虫 国美爬虫 淘宝爬虫 大数据
温馨提示:文末有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:文末有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:文末有 CSDN 平台官方提供的学长联系方式的名片! 作者简介:Java领…...
正则表达式 - 使用总结
正则表达式 - 使用总结 正则表达式(Regular Expression,简称Regex)是一种强大的文本处理工具,它允许我们通过特定的模式(pattern)来搜索、匹配和操作字符串。在编程、数据分析和文本处理等领域,正则表达式发挥着非常重要的作用。本文将总结正则表达式的基本概念、使用方…...
性能测试04|JMeter:连接数据库、逻辑控制器、定时器
目录 一、连接数据库 1、使用场景 2、直连数据库的关键配置 3、案例 编辑 二、逻辑控制器 1、if控制器 2、循环控制器 3、ForEach控制器 三、定时器 1、同步定时器 2、常数吞吐量定时器(用的少,了解即可) 3、固定定时器 一、连…...
力扣刷题:二叉树OJ篇(上)
大家好,这里是小编的博客频道 小编的博客:就爱学编程 很高兴在CSDN这个大家庭与大家相识,希望能在这里与大家共同进步,共同收获更好的自己!!! 目录 1.单值二叉树(1)题目描…...
【跨域】解决SpringBoot和openresty跨域问题
平时后端只需要写一个配置类就可以解决跨域但是最近的新项目死活不行 先说结论 项目中的权限校验(也可以是其他的)拦截器优先级高于跨域拦截器导致跨域处理失效 解决办法 1.在addCorsMappings上增加 Order(value -100)// 跨域优先级最高 2.nginx放行OPTIONS请求 SpringBo…...
下载ffmpeg执行文件
打开网址:Download FFmpeg 按下面步骤操作 解压文件就可以看到ffmpeg的执行文件了,需要通过命令行进行使用: ffmpeg命令行使用参考: ffmpeg 常用命令-CSDN博客...
SQLite 实际案例研究与创新应用
SQLite 作为一种强大而简单的数据库实现,应用于各类场景,从移动应用到物联网设备,再到边缘计算。在本章中,我们将通过几个典型案例,探讨 SQLite 如何在实际中解决复杂问题,并研究其创新应用的可能性。 案例…...
C语言 递归编程练习
1.将参数字符串中的字符反向排列,不是逆序打印。 要求:不能使用C函数库中的字符串操作函数。 比如: char arr[] "abcdef"; 逆序之后数组的内容变成:fedcba 1.非函数实现(循环) 2.用递归方法…...
【HDU】1089 A+B for Input-Output Practice (I)
1089 AB for Input-Output Practice (I):以EOF结尾的输入 Problem Description Your task is to Calculate a b. Too easy?! Of course! I specially designed the problem for acm beginners. You must have found that some problems have the same titles with this one,…...
[python3]Excel解析库-xlwings
xlwings 是一个强大的 Python 库,它允许你直接与 Microsoft Excel 进行交互。通过 xlwings,你可以轻松地在 Python 脚本或 Jupyter Notebook 中读取、写入和操作 Excel 文件,而无需手动打开 Excel 应用程序。此外,xlwings 还支持将…...
[python3]Excel解析库-xlutils
xlutils 是一组用于处理 Excel 文件的 Python 库,它实际上是 xlrd 和 xlwt 的扩展,提供了额外的功能来操作 Excel 文件。xlutils 主要由三个部分组成:xlutils.copy、xlutils.filter 和 xlutils.view,它们分别用于复制和修改现有 E…...
React中的合成事件
合成事件与原生事件 区别: 1. 命名不一样,原生用纯小写方式,react用小驼峰的方式 原生:onclick React的:onClick 2. 事件处理函数的写法不一样 原生的是传入一个字符串,react写法传入一个回调函数 3.…...
记录一次电脑被入侵用来挖矿的过程(Trojan、Miner、Hack、turminoob)
文章目录 0、总结1、背景2、端倪3、有个微软的系统更新,就想着更新看看(能否冲掉问题)4、更新没成功,自动重启电脑5、风险文件(好家伙命名还挺规范,一看名字就知道出问题了)6、开机有一些注册表…...
牛客网刷题 ——C语言初阶(5操作符)——BC107 矩阵转置
1.题目描述:BC107 矩阵转置 牛客网OJ链接 KiKi有一个矩阵,他想知道转置后的矩阵(将矩阵的行列互换得到的新矩阵称为转置矩阵),请编程帮他解答。 输入描述: 第一行包含两个整数n和m,表示一个矩阵包含n行m列…...
【调试记录】在CARLA中插入可以播放视频的组件
〇、问题描述 做实验验证的时候,需要在CARLA仿真环境中添加一个可以播放视频的功能,查了很多现有的实验,基本都是插入图像,而对于插入视频,实现的方法就很麻烦了。一开始考虑的是直接用射影变换进行叠加,计…...
【Linux】RPMSG通讯协议介绍
RPMSG协议通讯协议介绍 RPMSG,全称Remote processor Messaging。是一种核间通讯协议。在Linux Kernel中,已经内置了RPMSG。 Linux RPMSG基于共享内存,利用RPMSG可以高效的实现核间通信。比如Linux与FreeRTOS、Linux与Android,都可…...
Branch-Solve-Merge Improves Large Language Model Evaluation and Generation
题目 分支-求解-合并改进了大型语言模型的评估和生成 摘要 大型语言模型(LLM)经常用于多方面的语言生成和评估任务,这些任务涉及满足复杂的用户约束或考虑多个方面和标准。然而,由于模型缺乏一致性,无法计划和分解问题,他们的表现…...
SqlSugar-文章目录
SqlSugar学习总结1(基础操作) SqlSugar学习总结2(主从复制-数据库配置) SqlSugar学习总结3(主从复制-读写分离) SqlSugar学习总结4(树形递归查询) SqlSugar学习总结5(映射)...
如何理解RDD,以及RDD的五大特性和五大特点。
RDD:英文全称Resilient Distributed Dataset,叫做弹性分布式数据集,代表一个不可变、可分区、里面的元素可并行计算的分布式的抽象的数据集合。 Resilient弹性:RDD的数据可以存储在内存或者磁盘当中,RDD的数据可以分区…...
umd格式
umd格式是啥? umd格式是一种通用模块,他同时支持AMD、CJS、ESM模块和全局变量的方式 umd格式打包后的基本代码结构如下: (function (root, factory) {if (typeof define function && define.amd) {// AMDdefine([dependency], factory);} el…...
node.js之---内置模块
在 Node.js 中,模块系统是基于 CommonJS 模块规范 的,这使得开发者可以将代码分成多个独立的模块进行管理。Node.js 提供了很多 内置模块(也称为 核心模块),这些模块可以直接在代码中使用,而无需安装额外的…...
linux下安装达梦数据库v8详解
目录 操作系统、数据库 1、下载达梦数据库 2、安装前准备 2.1、建立数据库用户和组 2.2、修改文件打开最大数 2.3、挂载镜像 2.4、新建安装目录 3、数据库安装 4、配置环境变量 5、初始化数据库实例 6、注册服务 7、使用数据库 8、卸载数据库 9、多实例管理 10、…...
深入理解 Android 中的 ApplicationInfo
深入理解 Android 中的 ApplicationInfo 在 Android 开发中,ApplicationInfo 是一个非常重要的类,它包含了关于应用程序的元信息。这些信息通常是从 AndroidManifest.xml 文件中提取的,开发者可以通过 ApplicationInfo 类来获取和操作这些信…...
【vLLM】使用PagedAttention 进行大型语言模型的高效内存管理
重磅推荐专栏: 《大模型AIGC》 《课程大纲》 《知识星球》 本专栏致力于探索和讨论当今最前沿的技术趋势和应用领域,包括但不限于ChatGPT和Stable Diffusion等。我们将深入研究大型模型的开发和应用,以及与之相关的人工智能生成内容(AIGC)技术。通过深入的技术解析和实践经…...
STLG_01_12_程序设计C语言 - 联合体和枚举类型
在C语言中,联合体(Union)和枚举类型(Enum)是两种不同的数据结构,它们各自有特定的用途和特点。 联合体(Union) 联合体是一种数据结构,允许在相同的内存位置存储不同的数…...
ThreadLocal详解:深入探讨导致JVM内存泄露的原因及预防措施
引言 ThreadLocal 是Java提供的一个线程局部变量工具,它使得每个线程都可以拥有自己的变量副本,而这些副本对于其他线程而言是不可见的。这在多线程编程中非常有用,因为它可以避免共享资源带来的同步问题。然而,如果使用不当&…...
【FlutterDart】 拖动改变 widget 的窗口尺寸大小GestureDetector~简单实现(10 /100)
上效果 预期的是通过拖动一条边界线改变窗口大小,类似vscode里拖动效果。这个是简单的拖动实现 上代码: import package:flutter/material.dart;class MyDraggableViewDemo extends StatelessWidget {const MyDraggableViewDemo({super.key});override…...
【FlutterDart】 拖动边界线改变列宽并且有边界高亮和鼠标效果(12 /100)
【Flutter&Dart】 拖动改变 widget 的窗口尺寸大小GestureDetector~简单实现(10 /100) 【Flutter&Dart】 拖动边界线改变列宽类似 vscode 那种拖动改变编辑框窗口大小(11 /100) 上效果 对比一下vscode的效果&…...
鸿蒙应用开发(2)
鸿蒙应用开发启航计划-CSDN博客 鸿蒙应用开发(1)-CSDN博客 没看过前两篇的,建议请先看上面。 如果你学习完了前两篇,那么你学习这篇文章,就很容易理解了。 这一篇文章将介绍声明式UI的 渲染控制。你需要了解的是&…...
js -动态主题色
学习参考来源: 峰华大佬:https://www.bilibili.com/video/BV1E64y1Z79Q/?spm_id_from333.1391.0.0&vd_sourcea0f31140205458776d3a4ef477cd6561 实际效果: http://www.qingkong.zone/laboratory?typetheme-color 前言 本文内容可结合上…...
connect to host github.com port 22: Connection timed out 的解决方法
原因是 Github 被 GFW 屏蔽了。 Windows 系统,打开 C:\Windows\System32\drivers\etc,复制其中的 hosts 文件至桌面,用文本编辑器或者其他工具打开。 复制以下内容进去: 140.82.114.4 github.com 151.101.1.6 github.global.ss…...
AI 角色扮演法的深度剖析与实践
📢📢📢 大家好,我是云楼Yunlord,CSDN博客之星人工智能领域前三名,多年人工智能学习工作经验,一位兴趣稀奇古怪的【人工智能领域博主】!!!😜&#…...
ansible-动态inventory及内置函数
一. 简述: 关于inventory的基本用法可以参考上一篇文章:ansible-inventory定义-CSDN博客 在实际线上环境中,单纯的靠配置文件管理,是一件很麻烦的事情(比如一致性问题),特别是规模较大的场景下,会有大量主…...
【每日学点鸿蒙知识】广告ID、NFC手机充值、CSS支持语法、PC与模拟器交互、SO热更新等
1、HamonyOS 样机获取成功返回Oaid为00000000-0000-0000-0000-000000000000? 请求授权时需要触发动态授权弹窗,看一下是不是没有触发授权弹窗。 可以参考以下代码以及文档: // ets import identifier from ohos.identifier.oaid; import hilog from oh…...
MySQL 【多表查询】
一 . 概述 多表关系: 一对多(多对一) , 多对多 ,一对一 1) 一对一 案例: 用户 与 用户详情的关系 关系: 一对一关系,多用于单表拆分,将一张表的基础字段放在一张表中,其他详情字段放在另 一张表…...
第08章 存储管理(二)
一、EXT4文件系统详解 1.1 简介 1.1.1 课程引入 1.1.2 名词解释 1.1.3 类型 索引(index)文件系统 1.1.4 系统限制 1.1.5 图示 1.1.6 名词 1.2 inode(index node 索引节点) 1.3 block(块 文件内容) 二、文件链接 2.1 符号连接(软连接) 2.…...
win10搭建zephyr开发环境
搭建环境基于 zephyr官方文档 基于官方文档一步一步走很快就可以搞定 一、安装chocolatey 打开官网 https://community.chocolatey.org/courses/installation/installing?methodinstall-from-powershell-v3 1、用管理员身份打开PowerShell (1)执行 …...
常见框架漏洞
一:ThinkPhp 1.搭建环境,访问 2.访问路径,进行远程代码执行 二:struts2 1.搭建环境进行 2.使用工具进行检测 三:Spring 1.搭建环境进行访问并进行抓包 2.然后抓取数据包,使用PATCH请求来修改 3.进入容器…...
党员学习交流平台
本文结尾处获取源码。 本文结尾处获取源码。 本文结尾处获取源码。 一、相关技术 后端:Java、JavaWeb / Springboot。前端:Vue、HTML / CSS / Javascript 等。数据库:MySQL 二、相关软件(列出的软件其一均可运行) I…...
公司资产网站
本文结尾处获取源码。 本文结尾处获取源码。 本文结尾处获取源码。 一、相关技术 后端:Java、JavaWeb / Springboot。前端:Vue、HTML / CSS / Javascript 等。数据库:MySQL 二、相关软件(列出的软件其一均可运行) I…...
线上go内存泄漏分析实战
背景 最近经常发现web服务内存占用持续缓慢增高,从图像上看是基本持续递增,但偶尔也有下降趋势(不会下降很明显),对比30天以前没那么高内存占用,最近30天内存占用变化且无明显规律。WEB服务框架是echo框架&…...
UE5AI感知组件
官方解释: AI感知系统为Pawn提供了一种从环境中接收数据的方式,例如噪音的来源、AI是否遭到破坏、或AI是否看到了什么。 AI感知组件(AIPerception Component)是用于实现游戏中的非玩家角色(NPC)对环境和其…...
12306购票如何做到限流的,什么技术方案,mq吗,提示排队过多,请稍微重试,提示库存不足。具体实现细节是怎么样的
12306(中国铁路客户服务中心)的购票系统是一个典型的高并发、高流量的系统。在春运和节假日等高峰期间,购票需求量极大,用户的请求频繁且集中,系统必须通过多种技术手段来进行 限流 和 负载均衡,确保购票服…...
[irisctf 2025] kittycrypt knutsacque
作了俩题还有一个不对。 KittyCrypt 题目给了加密代码,样例和密文。密钥通过样例求出。 package mainimport ("crypto/rand""encoding/hex""encoding/json""fmt""math/big""os""strings"…...
数据结构(1~10)
(1)双栈 #include <iostream> #include <algorithm> using namespace std; // 定义栈元素的类型 typedef int SElemType;// 定义双栈数据结构 typedef struct {int top[2];int bot[2];SElemType *V;int m; } DblStack;// 初始化双栈 void I…...
Solidity合约编写(一)
Solidity IDE地址:Remix - Ethereum IDE 点击进入后在contract文件夹下创建合约 合约代码如下: // SPDX-License-Identifier: MIT pragma solidity ^0.8.26;contract SimpleStorage{bool hasFavorNumtrue;uint256 favorNum5;string favorNums"fiv…...
基于氢氧燃料电池的分布式三相电力系统Simulink建模与仿真
目录 1.课题概述 2.系统仿真结果 3.核心程序与模型 4.系统原理简介 5.完整工程文件 1.课题概述 基于氢氧燃料电池的分布式三相电力系统Simulink建模与仿真,仿真输出燃料电池中氢氧元素含量变化以及生成的H2O变化情况。 2.系统仿真结果 3.核心程序与模型 版本…...
【C/C++】nlohmann::json从文件读取json,并进行解析打印,实例DEMO
使用 json::parse 函数将JSON格式的字符串解析为 nlohmann::json 对象。这个函数支持多种输入源,包括字符串、文件流等。 #include <iostream> #include <nlohmann/json.hpp> #include <fstream>using json nlohmann::json;int main() {// 解析…...