当前位置: 首页 > 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不然无法提交文件。

http://www.lryc.cn/news/170358.html

相关文章:

  • Keepalived+LVS高可用集群
  • AK 9.12 百度Java后端研发B卷 笔试
  • 使用Python和XPath解析动态JSON数据
  • 记录一个iOS实现视频分片缓存拖拽快进不能播放的问题
  • 如何解决 503 Service Temporarily Unavailable?
  • keil报错:Flash Download failed - Could not load file‘..\..\Output\Template.axf
  • 从一到无穷大 #16 ByteSeries,思考内存时序数据库的必要性
  • 分支和远程仓库
  • 编译原理 —— 编译器
  • Python灰帽编程——错误异常处理与面向对象
  • 【每日一题】154. 寻找旋转排序数组中的最小值 II
  • Linux中如何获取输入设备(如触摸屏、按键等)的事件信息
  • Java学习day05:排序,选择、冒泡、快速、二分、杨辉三角
  • Mybatis的mapper.xml批量插入、修改sql
  • Centos7部署单机版MongoDB
  • Docker实战-第一章欢迎来到Docker世界
  • 初识C语言——详细入门一(系统性学习day4)
  • python 学习笔记(6)—— Flask 、MySql
  • Deepin下vsftp服务安装配置虚拟用户
  • OpenpyxlWriter‘ object has no attribute ‘save‘
  • ES6(三)
  • Android 数据库封装(SQLite)
  • Git从入门到起飞(详细)
  • R读写parquet文件
  • Java21 LTS版本
  • 【性能优化】虚拟懒加载(下拉滚动加载长列表)element-puls+el-table
  • 一对多映射处理
  • 关于IDEA没有显示日志输出?IDEA控制台没有显示Tomcat Localhost Log和Catalina Log 怎么办?
  • 蛇形填数 rust解法
  • 一文探索SD-WAN技术进阶后与MPLS的区别