Linux系统下git相关使用

news2024/11/30 11:42:43

目录

  git相关指令以及使用

  什么是git

  Linux系统git功能的配置

  关于码云的注册以及仓库的创建

  git的相关指令

    git clone 代码仓库地址

  git add [文件名]

  git commit [文件名] -m "文件提交信息"

  git push

  git status

  情况1:存在文件可以add

  情况2:存在文件已经add但是没有commit

  情况3:经过commit但是没有push

  情况四:本地文件已经全部提交或者没有需要提交的文件

  git log命令

  git相关指令以及使用

  相信不少人都或多或少听说过或者使用过git工具。在本次的博客当中我们就来介绍一下在Linux系统当中有关git相关指令的使用方法。

  什么是git

  git是一个开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理。简单的说,也就是资源备份系统。相当于一个云端,我们可以向云端传输一个文件,便于我们的文件的管理以及修改。

  简单的举一个例子:学校里面的老师让写毕业设计,你兴高采烈的写完之后找到老师让老师看是否过关。可是老师并不满意,于是对你说,不行还得改。

  于是你就回去修改了一遍,修改完成之后又让老师看了一遍。可是老师又在吐槽,还没第一次写的好呢。于是又让你回去进行修改。之后你就又回去修改自己的毕业设计,于是便有了第三版。

  可是老师看完之后更生气了,说:这些的是什么呀,越来越不好了,回去重新写!!!于是你只能失落的回去再进行修改。

  等你第四次找老师看毕业设计的时候。老师叹了一口气,说:唉,真不行,你也别改了,我觉得你的第二版的毕业设计就挺好的。于是又让你拿第二版的毕业设计给他看。可是你傻眼了,第二版?!!当时没保存呀!现在想要也找不到了!你就会想要是当时保存了该多好呀。

  你修改的众多毕业设计分为很多种版本,你需要手动保存并整理各种版本的文档。我们将这个步骤叫做版本控制。而我们的git就是发挥这个作用的一个软件。我们可以将文档上传到我们git上面的仓库当中。所谓的仓库相当于我们创建的文件夹,便于我们查找指定的文件。

  有了这种版本控制软件我们就不怕文档丢失等诸多事故的产生了,我们只需要在想要的时候将文件 pull 到本地就可以进行使用。

  Linux系统git功能的配置

  想要执行git相关的指令,我们需要先保证我们的系统当中已经下载了git软件。如果没有我们可以使用 yum install -y git 命令进行下载。我们可以通过 git --version 查看系统当中是否下载了git。

  在向云端上传文件之前我们需要先在码云上面创建一个账号。码云也就是gitee,是一个帮助我们进行文件管理的网站。我们可以通过这个网站使用git。网址如下:码云链接

  关于码云的注册以及仓库的创建

  在注册完账号之后我们需要创建好我们使用的仓库,例如:

  我们需要点击创建仓库,之后我们只需要跟这要求填写信息即可:

  需要注意的是:我们需要点击初始化仓库,并在仓库当中选择我们想要上传的文件的类型,这样可以避免我们不想要的文件的上传。

  创建完成之后,我们需要复制我们右端的仓库地址,之后就可以开始我们git工具的使用了。

  git的相关指令

    git clone 代码仓库地址

  首先我们在向云端传输文件之前需要将我们的云端仓库下载到本地当中,我们需要保证git已经安装的情况下执行git clone指令。需要注意的是在git clone 后面需要跟上我们的仓库地址,也就是我们上面复制的地址。我们只需要粘贴即可。

  当我们执行完git clone指令之后会要求我们输入我们gitee用户的用户名,以及密码以保证下载的人是我们自己。在输入完毕之后我们就会发现我们创建的仓库已经下载到本地来了(实际上就是一个文件夹)

  进入文件夹我们还可以发现我们创建好的文件。

  我们只需要在这里将文件上传到云端即可。

  git add [文件名]

  文件上传的指令分为三个步骤,第一个步骤就是git add指令。我们可以将我们想要上传的文件使用git add进行上传。我们创建一个文件进行测试:

  我们创建一个文件夹,使用git add指令上传文件,那么也就完成了第一步。

  git commit [文件名] -m "文件提交信息"

  第二部就是使用commit提交文件的备注信息,也就是备注。我们可以将我们代码当中写的是什么,以及什么时候写的,或者为什么要写这段代码写入。便于他人或者自己进行阅读。我们的备注一定不要乱写,要养成良好的习惯。命令执行效果如下:

  当我们的用户第一次使用git工具向云端上传文件的时候会发生这样的提示,我们需要根据指令执行run后面的两行命令。备注好我们的用户名,以及邮箱地址,便于代码的反馈等后续操作。

    执行完毕之后,再来执行git commit指令:

  当我们的界面显示create字样的时候就表示我们的文件已经提交,最后只需要将我们提交的文件和云端仓库同步即可,也就是执行我们最后的指令git push。

  git push

  这一步就是单纯的执行我们的git push命令,我们只需要在命令行当中输入git push字样即可。

  在最后的push阶段我们需要再次进行用户名以及密码的确认。之后我们的文件也就提交结束了。

  打开我们的gitee用户当中的仓库观察文件是否上传成功。

  我们会发现我们的文件确实已经上传到云端当中,之后想要使用的时候只需要使用git clone命令就可以将我们的代码下载下来。

  git status

    我们的git status指令可以查看当前仓库当中是否存在可以提交的文件的。我们的提交分为三部分。我们想要知道文件提交进行到了哪一步就可以使用git status指令进行查看。

  情况1:存在文件可以add

  当我们的仓库当中存在文件可以提交的时候我们使用git status查看会显示上面的情况。会显示use git add 的文件为for_test。

  情况2:存在文件已经add但是没有commit

  当我们的文件经过提交之后,在调用git status命令会产生如下情况:

  会显示changes to be committed 的文件,包括我们for_test文件夹以及其中的文件。之后继续执行我们的命令。

  情况3:经过commit但是没有push

  之后我们使用git commit指令之后继续实验观察产生的效果:

  系统会提示你需要使用git push命令提交你本地的commit文件,并且提示我们本地当中有一个commit的文件。

  情况四:本地文件已经全部提交或者没有需要提交的文件

  当我们执行完最后一步push操作的时候,我们再来观察使用status命令会产生什么效果:

  当我们的所有的文件都已经提交完毕之后我们的提示就显得很简洁了,会直接显示nothing to commit 工作目录很干净。

  我们可以灵活的使用git status查看本地是否有文件需要提交以及提交过程执行到了哪一步了,以帮助我们命令的执行。

  git log命令

  我们在本地提交了很多文件,可是要是有人使用我们的电脑提交了一些文件,我们想要知道都提交了那些文件以及在什么时候提交的文件应该怎么办呢?

  这个时候就用到了git log命令。这个命令可以显示我们向云端提交文件的信息。

  包括哪一个用户提交的文件以及什么时候提交的,提交了哪些文件,什么时候提交的等信息。方便我们日后的查看。

  此上就是我们git主要需要使用的命令,学会上述指令之后已经可以帮助我们很好的使用git帮助我们管理文件了。

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

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

相关文章

KNN(下):数据分析 | 数据挖掘 | 十大算法之一

⭐️⭐️⭐️⭐️⭐️欢迎来到我的博客⭐️⭐️⭐️⭐️⭐️ 🐴作者:秋无之地 🐴简介:CSDN爬虫、后端、大数据领域创作者。目前从事python爬虫、后端和大数据等相关工作,主要擅长领域有:爬虫、后端、大数据…

025 - STM32学习笔记 - 液晶屏控制(二) - 代码实现

025- STM32学习笔记 - 液晶屏控制(二) - 代码实现 好久没更新学习笔记了,最近工作上的事情太多了,趁着国庆中秋,多更新一点看看。 上节学习了关于LTDC与DMA2D以及显示屏的相关知识点,这节开始实操&#xf…

[谷粒商城笔记]08、环境-linux安装docker

1.查看是否已安装docker列表 yum list installed | grep docker 如果没有结果,则说明没有安装docker,我们就可以直接安装了。 2.安装docker: yum -y install docker 如果不是root账号,使用 sudo 以管理员身份运行 sudo yum -y install …

CentOS 7 安装 MySQL5.7

CentOS 7 安装 MySQL5.7 安装wget: yum -y install wget进入/usr/local/下: cd /usr/local/新建mysqlrpm文件夹: mkdir mysqlrpm进入mysqlrpm文件夹下: cd /usr/local/mysqlrpm/下载mysql包安装源: wget http://…

MySQL单表查询与多表查询

目录 一、单表查询 ​编辑 1、显示所有职工的基本信息。 ​编辑2、查询所有职工所属部门的部门号,不显示重复的部门号。 ​编辑3、求出所有职工的人数。 4、列出最高工和最低工资。 ​编辑5、列出职工的平均工资和总工资。 ​编辑6、创建一个只有职…

FreeRTOS两个死机原因(中断调用接口异常)【杂记】

1、中断回调函数中没有使用中断级API (xxFromISR) 函数 xSemaphoreGiveFromISR(uart_busy,&HighterTask);----正确 xSemaphoreGive(uart_busy);-----错误2、比configMAX_SYSCALL_INTERRUPT_PRIORITY优先级高的中断函数中使用了FreeRTOS的函数 3、临界代码保护后不可调用os…

安全基础 --- MySQL数据库的《锁》解析

MySQL的ACID (1)ACID是衡量事务的四个特性 原子性(Atomicity,或称不可分割性)一致性(Consistency)隔离性(Isolation)持久性(Durability) &…

(一)TinyWebServer的环境配置与运行

Linux下C轻量级Web服务器,项目来源于:TinyWebServer 配置环境(为下载代码,编译运行做准备) 1. 安装VMware VMware官网 选择产品,点击Workstation Pro 下载试用版(注:需要在官网注册…

Java自学(三)面向对象编程

目录 什么是面向对象 举例 this关键字和构造器 实体类 电影小案例 什么是面向对象 我们日常生活中谈到一个事物,总会描述它的性质与行为,这个事物也就是 ”对象”。比如一个学生对象,他的属性有姓名、学号、成绩......他的行为有上课、…

【C++】C++模板进阶 —— 非类型模板参数、模板的特化以及模板的分离编译

​ ​📝个人主页:Sherry的成长之路 🏠学习社区:Sherry的成长之路(个人社区) 📖专栏链接:C学习 🎯长路漫漫浩浩,万事皆有期待 上一篇博客:【C】C多…

史玉柱复出一年:巨人股权第三次被冻结,力推AI+游戏

大数据产业创新服务媒体 ——聚焦数据 改变商业 一则股权冻结信息,又一次将复出一年的史玉柱推上风口浪尖。 天眼查APP显示,巨人投资近日新增一则股权冻结信息,被执行人为史玉柱,冻结股权数额1.14亿元,冻结期限为三年…

Visual Studio 中将TAB设置为空格

将TAB设置为空格的原因很多,其中一点是为了统一不同编译器对TAB的解释,防止代码风格在不同编译器下不一致等。 在菜单中选择: 工具-->选项-->文本编辑器--->所有语言-->制表符 在窗口中选择,制表符大小和缩进大小都选为4&#xf…

【从入门到起飞】JavaSE—Stream流

🎊专栏【JavaSE】 🍔喜欢的诗句:更喜岷山千里雪 三军过后尽开颜。 🎆音乐分享【如愿】 🥰欢迎并且感谢大家指出我的问题 文章目录 🍔Stream流的作用🍔Stream流的使用步骤🎄获取Strea…

机器人过程自动化(RPA)入门 7. 处理用户事件和助手机器人

在UiPath中,有两种类型的Robot用于自动化任何流程。一个是后台机器人,它在后台工作。它独立工作,这意味着它不需要用户的输入或任何用户交互。另一个是前台机器人,也被称为助理机器人。 本章介绍前台机器人。在这里,我们将了解自动化过程中通过简单按键、单击鼠标等触发事…

代码随想录算法训练营第四十六天 | 动态规划 part 8 | 139.单词拆分、多重背包、背包问题总结

目录 139.单词拆分思路代码 多重背包背包问题总结 139.单词拆分 Leetcode 思路 dp[i] : 字符串长度为i的话,dp[i]为true,表示可以拆分为一个或多个在字典中出现的单词。如果确定dp[j] 是true,且 [j, i] 这个区间的子串出现在字典里&#xf…

仿真数据检查器如何比较数据

可以定制仿真数据检查器比较过程,以多种方式满足您的需求。在比较各运行时,仿真数据检查器会执行以下操作: 根据对齐设置,对齐基线运行和比较项运行中的信号对组。 仿真数据检查器不会比较无法对齐的信号。 根据指定的同步方法同…

Leetcode 剑指 Offer II 046. 二叉树的右视图

题目难度: 中等 原题链接 今天继续更新 Leetcode 的剑指 Offer(专项突击版)系列, 大家在公众号 算法精选 里回复 剑指offer2 就能看到该系列当前连载的所有文章了, 记得关注哦~ 题目描述 给定一个二叉树的 根节点 root,请找出该二叉树的 最底…

【中秋国庆不断更】OpenHarmony定义可动画属性:@AnimatableExtend装饰器

AnimatableExtend装饰器用于自定义可动画的属性方法,在这个属性方法中修改组件不可动画的属性。在动画执行过程时,通过逐帧回调函数修改不可动画属性值,让不可动画属性也能实现动画效果。 可动画属性:如果一个属性方法在animation…

批量剪辑视频软件,支持免费试用,合成视频,预览不限量不收费

几乎对于所有的短视频创作者来说,批量剪辑软件都是现在或者将来必备的办公软件。现如今市场上的批量剪辑软件也是层出不穷,质量也是良莠不齐。 今天给大家实实在在的推荐一款性价比非常高的批量剪辑软件——超级编导,适用于既想提升团队视频…

volatile关键字以及使用场景

在多线程环境下,如果编程不当,可能会出现程序运行结果混乱的问题。 出现这个原因主要是,JMM 中主内存和线程工作内存的数据不一致,以及多个线程执行时无序,共同导致的结果。 同时也提到引入synchronized同步锁&#x…