当前位置: 首页 > news >正文

【lesson7】git的介绍及使用

文章目录

  • 什么是git
  • git的历史
  • git使用
    • 在gitee上创建仓库
      • git clone + HTTPS地址
      • git add .
      • git add 文件名
      • git commit “日志”
      • git push
      • git log
      • git rm 文件名
      • git status
      • git pull

什么是git

git是版本控制器,那么什么是版本控制器呢?
下面讲个故事为大家讲解一下:
我们上学的时候都应该写过实验报告。
故事背景:你的舍友小明同学,第一个写完了实验报告准备交给老师。
在这里插入图片描述
而小明的些报告能力不行
在这里插入图片描述
于是小明在原报告的基础上进行修改。然后再次交给老师。
在这里插入图片描述
在这里插入图片描述
于是小明在这份代码的基础上再做了修改,然后再次交给老师。
在这里插入图片描述
在这里插入图片描述
由于没有保留之前版本的实验报告,小明就苦思冥想之前写的到底是什么。

这时作为小明舍友的你,小华也交实验报告给老师。
在这里插入图片描述
在这里插入图片描述
于是小明就拿回去改,但是改的同时小华想起了小明的遭遇,于是在改之前备份了一份。然后再改完交给老师。
在这里插入图片描述
在这里插入图片描述
于是小华又拿回去改,但是改之前也把这份实验报告备份了,以免老师要这个版本的。小华又把改完得我实验报告交给老师。
在这里插入图片描述
在这里插入图片描述

于是小华又拿回去改,但是改之前也把这份实验报告备份了,以免老师又要这个版本的实验报告。小华又把改完得我实验报告交给老师。
在这里插入图片描述

在这里插入图片描述
于是小华回去把第一版本的实验报告交给了老师。
在这里插入图片描述

git的历史

我们知道Linux之父雷纳斯托瓦兹把Linux开源了,有许多顶尖的黑客以及高手参与了这个项目,所以这些人每天要向雷纳斯托瓦兹发送大量的代码,而雷纳斯托瓦兹每天都要夜以继日的对这些代码进行审核以及复制粘贴。于是雷纳斯托瓦兹就开始上网寻找工具帮忙,但是发现这个工具是收费的于是就放弃了
但是BitKeepe的老板非常崇拜雷纳斯托瓦兹于是对Linux社区免费的开放了权限
故事到此本来应该结束了,但是Linux社区的黑客和高手们对这个版本控制器充满了好奇心,于是开始进行破解,但是巧合的是被BitKeepe的老板发现了,于是这个老板收回了对Linux社区的免费权限
就这样雷纳斯托瓦兹一页回到解放前,又开始了夜以继日的审核和复制粘贴代码的工作。雷纳斯托瓦兹想着这样不行,于是自己花三天时间写了一个版本控制器命名为git并且对它进行了开源

git使用

在gitee上创建仓库

在这里插入图片描述
按+号创建仓库

git clone + HTTPS地址

功能:克隆远端仓库。
在这里插入图片描述
然后在linux操作系统上git clone + HTTPS地址。
在这里插入图片描述
在这里插入图片描述
然后在本地就会生成一个这样的仓库,与gitee上的仓库一样。
在这里插入图片描述
然后就可以提交代码了

git add .

功能:提交所有未提交或者更新过的代码

git add 文件名

功能:提交某个文件。
在这里插入图片描述

git commit “日志”

功能:写入提交日志
在这里插入图片描述

git push

功能:push 到远端仓库
在这里插入图片描述

git log

功能:查看提交信息

在这里插入图片描述

git rm 文件名

功能:删除文件
如果要远端也删除文件要重新git add、git commit -m和git push
在这里插入图片描述
在这里插入图片描述
可以看到单独的git rm没有用
在这里插入图片描述
在这里插入图片描述
我们可以看到test.c确实删除了。

git status

功能:获取提交状态,判断还有没有未提交的
在这里插入图片描述

git pull

功能:协同开发下当远端仓库文件数量发生变化,本地必须git pull不然无法提交文件。

相关文章:

【lesson7】git的介绍及使用

文章目录 什么是gitgit的历史git使用在gitee上创建仓库git clone HTTPS地址git add .git add 文件名git commit “日志”git pushgit loggit rm 文件名git statusgit pull 什么是git git是版本控制器,那么什么是版本控制器呢? 下面讲个故事为大家讲解一…...

Keepalived+LVS高可用集群

目录 一、keepalived介绍: 二、keepalived工具介绍: (1)管理 LVS 负载均衡软件: (2)支持故障自动切换: (3)实现 LVS 负载调度器、节点服务器的高可用性&…...

AK 9.12 百度Java后端研发B卷 笔试

T1(博弈论) #include <bits/stdc.h>#define endl \nusing namespace std;typedef long long LL;const int N 1e5 10;int n, m, t;void solve() {cin >> n >> m; t n m - 2;if(t & 1) cout << "Yes" << endl;else cout <&l…...

使用Python和XPath解析动态JSON数据

JSON动态数据在Python中扮演着重要的角色&#xff0c;为开发者提供了处理实时和灵活数据的能力。Python作为一种强大的编程语言&#xff0c;提供了丰富的工具和库来处理动态JSON数据使得解析和处理动态JSON数据变得简单和高效。例如&#xff0c;使用内置的json模块&#xff0c;…...

记录一个iOS实现视频分片缓存拖拽快进不能播放的问题

代码现状 首先来看一下我们将视频数据塞给请求的代码 - (void)finishLoadingWithLoadingRequest:(IdiotResourceTask *)task {// printf("哈哈执行到这里执行到到这里\n");printf("哈哈哈数量数量%ld\n", self.taskList.count);//填充信息task.loadingRe…...

如何解决 503 Service Temporarily Unavailable?

&#x1f337;&#x1f341; 博主猫头虎&#xff08;&#x1f405;&#x1f43e;&#xff09;带您 Go to New World✨&#x1f341; &#x1f405;&#x1f43e;猫头虎建议程序员必备技术栈一览表&#x1f4d6;&#xff1a; &#x1f6e0;️ 全栈技术 Full Stack: &#x1f4da…...

keil报错:Flash Download failed - Could not load file‘..\..\Output\Template.axf

keil报错&#xff1a;Flash Download failed - Could not load file’…\Output\Template.axf&#xff0c;如下图所示&#xff1a; 原因是很多.h文件没有定义位置&#xff0c;可以按照下图操作&#xff1a; 而且&#xff0c;如果是想使用压缩包&#xff0c;那一定要关闭keil后…...

从一到无穷大 #16 ByteSeries,思考内存时序数据库的必要性

本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。 本作品 (李兆龙 博文, 由 李兆龙 创作)&#xff0c;由 李兆龙 确认&#xff0c;转载请注明版权。 引言 在[3]中我基于Gorilla讨论了时序数据库设置cache的可行性&#xff0c;最后得出结论&…...

分支和远程仓库

分支 查看分支 git branch -v 创建分支 git branch 分支名 切换分支 git checkout 分支名 合并分支 git merge 分支名 把指定的分支合并到当前分支上 查看当前所有远程地址别名&#xff1a; git remote -v 起别名&#xff1a; git remote add 别名 远程地址推送本地分支上的…...

编译原理 —— 编译器

文章目录 编译原理阶段词法分析器语法分析器语义分析器中间代码生成器代码优化器代码生成器 编译原理阶段 编译器分为9个阶段来将我们所编写的高级代码编译为计算机可执行的机器码 源程序词法分析器语法分析器语义分析器中间代码生成器独立于机器的代码优化器代码生成器依赖于…...

Python灰帽编程——错误异常处理与面向对象

文章目录 错误异常处理与面向对象1. 错误和异常1.1 基本概念1.1.1 Python 异常 1.2 检测&#xff08;捕获&#xff09;异常1.2.1 try except 语句1.2.2 捕获多种异常1.2.3 捕获所有异常 1.3 处理异常1.4 特殊场景1.4.1 with 语句 1.5 脚本完善 2. 内网主机存活检测程序2.1 scap…...

【每日一题】154. 寻找旋转排序数组中的最小值 II

154. 寻找旋转排序数组中的最小值 II - 力扣&#xff08;LeetCode&#xff09; 已知一个长度为 n 的数组&#xff0c;预先按照升序排列&#xff0c;经由 1 到 n 次 旋转 后&#xff0c;得到输入数组。例如&#xff0c;原数组 nums [0,1,4,4,5,6,7] 在变化后可能得到&#xff1…...

Linux中如何获取输入设备(如触摸屏、按键等)的事件信息

Linux中如何获取输入设备&#xff08;如触摸屏、按键等&#xff09;的事件信息 在Linux中&#xff0c;可以使用getevent命令来获取输入设备&#xff08;如触摸屏、按键等&#xff09;的事件信息。如果你想在C程序中获取输入设备事件&#xff0c;可以使用以下步骤&#xff1a; …...

Java学习day05:排序,选择、冒泡、快速、二分、杨辉三角

声明&#xff1a;该专栏本人重新过一遍java知识点时候的笔记汇总&#xff0c;主要是每天的知识点题解&#xff0c;算是让自己巩固复习&#xff0c;也希望能给初学的朋友们一点帮助&#xff0c;大佬们不喜勿喷(抱拳了老铁&#xff01;) Java学习day05&#xff1a;排序&#xff0…...

Mybatis的mapper.xml批量插入、修改sql

今天要有个功能&#xff0c;要进行一批数据的插入和修改&#xff0c;为了不频繁调用数据库&#xff0c;所以想到了批量插入和修改&#xff0c;因为从毕业后&#xff0c;就没写过批量插入和批量修改&#xff0c;所以在这里记录一下&#xff0c;避免后续再遇到忘记怎么写了 批量…...

Centos7部署单机版MongoDB

目录 Centos7部署单机版MongoDBMongoDB介绍数据模型索引分布式高可用性查询语言驱动和社区用途缺点 下载并解压安装包创建相关文件夹和文件编辑mongod.conf文件启动mongodb创建管理员用户终止MongoDB服务配置自启动服务关闭SELinux编辑自启动服务文件mongodb服务命令 Centos7部…...

Docker实战-第一章欢迎来到Docker世界

Docker基础 什么是Docker docker是包括一个命令行程序、后台守护进程和一组远程服务&#xff0c;它简化了安装、运行、发布和删除软件的工作。docker实现的基础是UNIX的容器技术。所以在docker出世之前已经有容器的概念&#xff0c;而且像谷歌一类公司也在探索自己的容器&…...

初识C语言——详细入门一(系统性学习day4)

目录 前言 一、C语言简单介绍、特点、基本构成 简单介绍&#xff1a; 特点&#xff1a; 基本构成&#xff1a; 二、认识C语言程序 标准格式&#xff1a; 简单C程序&#xff1a; 三、基本构成分类详细介绍 &#xff08;1&#xff09;关键字 &#xff08;2&#xf…...

python 学习笔记(6)—— Flask 、MySql

目录 Flask 1、起步 2、渲染项目的首页 3、处理无参数的 GET 请求 4、处理有 query 参数的 GET 请求 6、处理 params 参数的 get 请求 6、处理 application/json 类型请求体的 POST 请求 7、根据参数渲染模板页面 8、上传文件 数据库操作&#xff08;mysql&#xff0…...

Deepin下vsftp服务安装配置虚拟用户

1. 系统环境 Deepin20.9 2. 在线安装 # apt install -y vsftp //安装ftp服务软件 # apt install -y db-util //安装虚拟用户密码库处理软件 3. 离线安装 3.1 下载依赖包 # apt-get download $(apt-cache depends --recurse --no-recommends --no-suggests --n…...

别再满世界找旧版了!用JetBrains Toolbox App一键管理所有IDE版本(含IDEA/PyCharm/WebStorm)

高效管理开发环境&#xff1a;JetBrains Toolbox App 的进阶使用指南 每次打开编辑器都要重新配置环境&#xff1f;项目组里有人用新版有人用旧版导致协作困难&#xff1f;插件突然不兼容最新版本&#xff1f;这些问题困扰着许多开发者。JetBrains Toolbox App 作为官方推出的管…...

Cadence Allegro 17.2 PCB设计避坑指南:从焊盘制作到封装绘制的完整流程

Cadence Allegro 17.2 PCB设计避坑指南&#xff1a;从焊盘制作到封装绘制的完整流程 刚接触Cadence Allegro 17.2的硬件工程师&#xff0c;往往会在焊盘制作和封装绘制环节踩不少坑。这些看似基础的操作&#xff0c;一旦参数设置不当或概念理解有误&#xff0c;轻则导致设计返工…...

Go 里什么时候可以“panic”?

“Don’t panic.” —— Go 谚语 但……如果我真的想 panic 呢&#xff1f;在 Go 的世界里&#xff0c;panic() 就像厨房里的灭火器&#xff1a;平时你不会用它炒菜&#xff0c;但如果油锅着火了&#xff0c;你肯定得拉它一把。今天我们就来聊聊&#xff1a;Go 里什么时候 pani…...

为Dify扩展AI图表与文档生成能力:微服务架构实战指南

1. 项目概述&#xff1a;为Dify打造专属的AI图表与文档生成工具箱如果你正在使用Dify构建自己的AI应用&#xff0c;并且希望让AI不仅能生成文字&#xff0c;还能直接输出流程图、思维导图、PPT甚至试卷&#xff0c;那么这个项目就是为你准备的。brightwang/dify-tool-service是…...

深度解析:HS2-HF Patch如何通过模块化架构彻底重塑游戏体验

深度解析&#xff1a;HS2-HF Patch如何通过模块化架构彻底重塑游戏体验 【免费下载链接】HS2-HF_Patch Automatically translate, uncensor and update HoneySelect2! 项目地址: https://gitcode.com/gh_mirrors/hs/HS2-HF_Patch HS2-HF Patch作为《Honey Select 2》最全…...

别再死记硬背CTL公式了!用UPPAAL模拟器手把手带你理解A[]和E<>的区别

别再死记硬背CTL公式了&#xff01;用UPPAAL模拟器手把手带你理解A[]和E<>的区别 刚接触形式化验证工具UPPAAL时&#xff0c;最令人头疼的莫过于那些晦涩难懂的CTL&#xff08;计算树逻辑&#xff09;公式。A[]、E<>这些符号组合看起来像天书&#xff0c;教科书上的…...

保姆级教程:小白也能轻松上手 AI 硬件

大家好&#xff0c;我是siuser小伟如果你是一个小白&#xff0c;又想玩一下硬件的话&#xff0c;那我一定推荐你去接触 AI 小智。因为他们的生态非常好&#xff0c;教程非常详细&#xff0c;你也可以跑一个专属于你自己的 AI 硬件。这篇文章专门写给第一次部署小智 Go 后端的人…...

PHP怎么处理Eloquent Attribute Harmonization属性协调_Laravel解决数据冲突【教程】

Eloquent 属性协调失败源于 $casts、访问器、序列化逻辑等机制作用域与执行顺序不一致&#xff1b;应优先用 $casts 处理类型转换&#xff0c;访问器仅用于动态计算&#xff0c;JSON 字段需显式标记 dirty 或拆分为关联模型。PHP 中 Eloquent 的 “Attribute Harmonization” 并…...

Android 14 + Linux 6.1 平台 RTL8822CE Wi‑Fi 适配实战:从 PCI 已枚举到成功扫描热点

摘要 在 Android 14 Linux 6.1 的移植过程中&#xff0c;RTL8822CE Wi‑Fi 很容易出现一种“硬件已经被 PCI 枚举到&#xff0c;但系统就是没有 wlan0”的尴尬状态。本文复盘一次完整的 RTL8822CE 适配过程&#xff0c;最终定位出两个连续阻塞点&#xff1a;第一&#xff0c;目…...

崩坏星穹铁道自动化助手终极指南:三月七小助手完整使用教程

崩坏星穹铁道自动化助手终极指南&#xff1a;三月七小助手完整使用教程 【免费下载链接】March7thAssistant 崩坏&#xff1a;星穹铁道全自动 三月七小助手 项目地址: https://gitcode.com/gh_mirrors/ma/March7thAssistant 还在为《崩坏&#xff1a;星穹铁道》中繁琐的…...