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

Linux中的git命令行

Linux中的git命令行

目录

  • Linux中的git命令行
    • 引入
    • 1、Linux下的git工具起源
    • 2、gitee的使用
      • .gitignore
      • .git
    • 3、git三板斧
      • 3.1 git add
      • 3.2 git commit
      • 3.3 git push
    • 4、git操作
      • 4.1 查看提交日志
      • 4.2 查看状态
      • 4.3 远端同步
      • 4.4 删除文件
      • 4.5 修改文件名

引入

当多个开发者同时参与同一个项目时,代码的管理和协作变得非常重要。版本控制器(Version Control 可以帮助开发者追踪代码的变化、协同工作、还原历史版本、定位错误等,极大地提高了代码的可维护性和稳定性。而Git作为一个强大的版本控制系统,为开发者提供了多种优秀的功能和工具,帮助开发者更加高效、可靠地开发和管理代码。

1、Linux下的git工具起源

雷纳斯·本纳第克特·托瓦兹(Linus Benedict Torvalds)是一位著名的计算机程序员,他是Linux操作系统的创建者。Git是一种分布式版本控制系统,由托瓦兹于2005年创建。

托瓦兹创建Git的主要原因是他在管理Linux内核代码时遇到了一些问题。他觉得当时使用的版本控制工具无法满足Linux内核项目的需求,因此他开始思考如何创建一种更好的版本控制系统。Git是他的解决方案之一,而且现在它已经成为了全球最流行的版本控制系统之一,广泛应用于各种软件开发项目中。

2、gitee的使用

前面我们已经了解到Git是一种分布式版本控制器,gitee与github由此诞生,它们均是一个基于Git的代码托管平台;在国内,我们处于稳定性的考虑,我们使用gitee作为我们的代码托管仓库

step1:我们首先新建一个仓库

image-20230411092924787

image-20230410205331420

step2:得到远端仓库地址

image-20230410205539271

step3:在Linux环境上使用git将远端的仓库拉取到本地

sudo yum install git    #安装git工具
#git clone 后面跟刚刚复制的仓库地址
git clone https://gitee.com/how-vague-and-fragile-love-is/linux_-test.git

image-20230411093338310

此时我们即可查看到拉去到本地的git仓库:

image-20230411093400808

进入仓库并查看内容:

cd linux_-test
ls -al

image-20230411093515935

.gitignore

.gitignore 是一个在 Git 仓库中使用的文件,用于指定不应由 Git 跟踪项目更改的文件和目录(凡是在.gitignore文件内部的后缀,对应的文件,不会被上传到gitee上)

vim .gitignore

.git

在创建Git仓库时,Git会自动在项目目录中创建.git目录。该目录通常是隐藏的,因此不会在常规文件浏览器中显示;.git目录用于存储Git仓库中的所有信息,通过在其中存储Git仓库的所有信息,Git可以跟踪文件的所有更改并记录它们的历史记录。

push到远端本质就是将你本地.git文件里面的内容同步到gitee上

3、git三板斧

image-20230410214134677

3.1 git add

git add命令用于将修改后的文件添加到暂存区,这是Git版本控制中的第一个阶段

①方式一:可将指定文件添加到暂存区:

git add [filename]

②方式二:直接将当前目录下新增文件(所有修改的文件)添加到暂存区:

git add .

示例如下:(我们一般直接使用方式二即可)

#添加文件
git add .

image-20230411094604285

其中hellolinux_-test目录下新添加的文件,通过git add .操作将它添加至暂存区


3.2 git commit

Git commit命令用于将修改提交到本地仓库中

git commit -m '提交日志'

提交日志是记录代码仓库中每一次提交信息的一种记录形式。每次提交都会包括一个简短的描述、作者、提交时间等基本信息。提交日志的作用是方便开发人员在后续的开发工作中查看、理解和管理代码的变更历史

示例如下:

git commit -m 'first update test'

image-20230411094740028


3.3 git push

它可以将本地分支上的提交(commit)推送到远程仓库中

git push

image-20230411095132258

此时我们查看远端仓库即可看到我们上传的内容:

image-20230411095605914

4、git操作

4.1 查看提交日志

git log     #查看提交日志

image-20230411095901657

使用该命令查看提交日志是倒着的,第一个是最近一次的提交日志。

4.2 查看状态

例如我们修改.gitignore文件:

vim .gitignore 

image-20230411100142615

使用如下命令查看状态:

git status

image-20230411100233777

测试修改.gitignore文件

image-20230411100439724

查看远端仓库:

image-20230411100530564

4.3 远端同步

当我们直接修改远端仓库时,会出现远端仓库与本地仓库不一致的情况,此时git push会出错,因此我们需要将远端仓库拉取到本地同步,再push

#将远端仓库拉取到本地同步
git pull#将我们本地仓库push到远端
git push

4.4 删除文件

删除本地仓库的文件:

git rm [filename]

4.5 修改文件名

修改文件名:

#使用mv指令,变化不会记录在status当中
git mv [旧文件名] [新文件名]

例如:

git mv hello helloworld

再使用git status查看状态:
在这里插入图片描述

相关文章:

Linux中的git命令行

Linux中的git命令行 目录 Linux中的git命令行引入1、Linux下的git工具起源2、gitee的使用.gitignore.git 3、git三板斧3.1 git add3.2 git commit3.3 git push 4、git操作4.1 查看提交日志4.2 查看状态4.3 远端同步4.4 删除文件4.5 修改文件名 引入 当多个开发者同时参与同一个…...

【C++】哈希表:开散列和闭散列

📝 个人主页 :超人不会飞)📑 本文收录专栏:《C的修行之路》💭 如果本文对您有帮助,不妨点赞、收藏、关注支持博主,我们一起进步,共同成长! 目录 前言一、基于哈希表的两个…...

C技能树:Hello World

Hello World 输出 "Hello, World!" 字符串,请选出错误答案。 小知识:Hello World究竟从何而来? Hello, World最早是由 Brian Kernighan 创建的。1978年,Brian Kernighan写了一本名叫《C程序设计语言》的编程书,在程…...

TryHackMe-Set(Windows渗透测试 | WinDefender免杀)

Set 您再次发现自己在Windcorp公司的内部网络上。上次你去那里的味道真好,你回来了 了解更多。 但是,这次他们设法保护了域控制器,因此您需要找到另一台服务器,并在第一次扫描时发现“Set”。 Set被用作开发人员的平台&#xf…...

信安大佬真的用kali吗?

Kali只是现在网络安全和kali比较火的一个操作系统 下面我为大家讲讲kali系统都有那些优点 Kali介绍Kali Linux是基于Debian的Linux发行版, 设计用于数字取证操作系统。面向专业的渗透测试和安全审计。 集成化:预装超过300个渗透测试工具兼容好&#x…...

禁用表单元素:Layui框架下的实践与技巧

引言 在日常的网页开发过程中,有时我们需要禁用表单元素,以防止用户在某些情况下进行输入或更改。在本文中,我们将介绍如何在Layui框架下使用JavaScript禁用表单元素,例如单选按钮(radio)、下拉列表&#…...

spring boot 访问HTML

HTML整合spring boot 简介默认文件路径访问自定义文件路径访问 或通过Controller控制器层跳转访问 简介 SpringBoot默认的页面映射路径(即模板文件存放的位置)为“classpath:/templates/*.html”。静态文件路径为“classpath:/static/”,其中…...

WPF教程(四)--Dispatcher

一、Dispatcher介绍 微软在WPF引入了Dispatcher,那么这个Dispatcher的主要作用是什么呢? 不管是WinForm应用程序还是WPF应用程序,实际上都是一个进程,一个进程可以包含多个线程,其中有一个是主线程,其余的是…...

ijkplayer 编译增加支持更多的音视频格式

ijkplayer是B站开源的一款基于ffmpeg的移动端播放器。但为了减少播放器的体积,很多音视频的格式播放默认都是不支持的,需要自己下载ijkplayer源码进行编译。这里以mac环境下android为例,简述ijkplayer的编译过程,以及为了支持更多…...

TOP命令显示完整命令行信息

TOP 在Linux系统中,可以使用top命令来查看系统的实时性能数据,包括CPU使用率、内存使用率、进程信息等。以下是top命令的常用选项: -d seconds:指定top命令的刷新时间,单位为秒。 -u username:只显示指定…...

Spring6从入门到精通 第一章 带你玩转Spring

这里写目录标题 一 Spring框架产生的原因二 Spring6配置的关键环节 一 Spring框架产生的原因 传统的JavaWeb存在着耦合度较高的问题,而且实现完整的的MVC三层架构,开发成本过大,因此出现了Spring这个轻量级的开发框架,相当于建筑里…...

Apache POI 实现用Java操作Excel完成读写操作

简介 Apache POI是一个用于操作Microsoft Office格式文件(包括xls、docx、xlsx、pptx等)的Java API库。POI全称为Poor Obfuscation Implementation,是Apache Software Foundation的一个开源项目。它提供了一组Java API,使得Java程…...

改善供应商关系的八种方法

与供应商保持良好关系的重要性有很多原因。最重要的是,它使每个人的日常工作更加愉快。它还可以为你获得更好的交易,有助于协作并增强商誉。 但是,每个供应商都是不同的,建立牢固的关系可能很棘手。本文将解释企业如何建立并操持…...

网络安全-CDN绕过寻找真实IP

网络安全-CDN绕过寻找真实IP CDN就是CDN加速,就是根据你的目标让你访问的更快 CDN CDN,即内容分发网络,主要解决因传输距离和不同运营商节点造成的网络速度性能低下的问题。说得简单点,就是一组在不同运营商之间的对接节点上的…...

牛客网 HJ28 素数伴侣【二分图匹配,匈牙利算法】困难

描述 若两个正整数的和为素数,则这两个正整数称之为“素数伴侣”,如2和5、6和13,它们能应用于通信加密。现在密码学会请你设计一个程序,从已有的 N ( N 为偶数)个正整数中挑选出若干对组成“素数伴侣”&am…...

带你畅玩ChatGPT

ChatGPT出来很久了,最近不少朋友还是不太会使用ChatGPT体验与机器人进行聊天,我正好发现有种非常简单的方式帮助大家体验ChatGPT,且响应速度非常快,写代码能力也不错,现在推荐给大家,希望对大家有所帮助。 目录 一、下载专用浏览器 1.1 下载链接 1.2 安装浏览器 二、…...

ChatGPT探索系列之六:思考ChatGPT的未来发展趋势和挑战

文章目录 前言一、未来发展趋势1. ChatGPT重塑数据分析之道2. ChatGPT颠覆企业运用人工智能和机器学习的途径3. ChatGPT颠覆自动化商业流程4. ChatGPT引领企业决策迈向新纪元 二、ChatGPT掀开未来充满机遇和挑战的新篇章总结 前言 ChatGPT发展到目前,其实网上已经有…...

TryHackMe-Year of the Fox(Linux渗透测试)

Year of the Fox 你能熬过狡猾的狐狸吗? 端口扫描 循例nmap 有个域名,加入hosts SMB枚举 smbmap enum4linux -a,枚举到两个账户 Web枚举 进80发现需要登录 上hydra RCE to Getshell 进来可以查看一些文件 bp发现这里存在过滤 burpfuzz一…...

ChatGPT 如何获取API Key

什么是OpenAI API Key? OpenAI是ChatGPT的“开发商”,提供API使得开发者可以在自己的应用程序上调用OpenAI的相关服务(除了ChatGPT,OpenAI还有其他产品)。如果想调用OpenAI的产品服务在自己的应用程序上,我们就需要申…...

明面抵制,暗中布局 对于AI,马斯克的言行为何如此“割裂”?

最近,马斯克创建了一家叫做“X”的空壳公司,目标是将其打造成涵盖各方面的多功能应用集合平台,推特、SpaceX、特斯拉、Neuralink等公司业务都已打包加入其中。如今,“X”公司再添新丁——X.AI,即马斯克新成立的人工智能…...

遍历 Map 类型集合的方法汇总

1 方法一 先用方法 keySet() 获取集合中的所有键。再通过 gey(key) 方法用对应键获取值 import java.util.HashMap; import java.util.Set;public class Test {public static void main(String[] args) {HashMap hashMap new HashMap();hashMap.put("语文",99);has…...

页面渲染流程与性能优化

页面渲染流程与性能优化详解(完整版) 一、现代浏览器渲染流程(详细说明) 1. 构建DOM树 浏览器接收到HTML文档后,会逐步解析并构建DOM(Document Object Model)树。具体过程如下: (…...

现代密码学 | 椭圆曲线密码学—附py代码

Elliptic Curve Cryptography 椭圆曲线密码学(ECC)是一种基于有限域上椭圆曲线数学特性的公钥加密技术。其核心原理涉及椭圆曲线的代数性质、离散对数问题以及有限域上的运算。 椭圆曲线密码学是多种数字签名算法的基础,例如椭圆曲线数字签…...

【决胜公务员考试】求职OMG——见面课测验1

2025最新版!!!6.8截至答题,大家注意呀! 博主码字不易点个关注吧,祝期末顺利~~ 1.单选题(2分) 下列说法错误的是:( B ) A.选调生属于公务员系统 B.公务员属于事业编 C.选调生有基层锻炼的要求 D…...

自然语言处理——循环神经网络

自然语言处理——循环神经网络 循环神经网络应用到基于机器学习的自然语言处理任务序列到类别同步的序列到序列模式异步的序列到序列模式 参数学习和长程依赖问题基于门控的循环神经网络门控循环单元(GRU)长短期记忆神经网络(LSTM&#xff09…...

【碎碎念】宝可梦 Mesh GO : 基于MESH网络的口袋妖怪 宝可梦GO游戏自组网系统

目录 游戏说明《宝可梦 Mesh GO》 —— 局域宝可梦探索Pokmon GO 类游戏核心理念应用场景Mesh 特性 宝可梦玩法融合设计游戏构想要素1. 地图探索(基于物理空间 广播范围)2. 野生宝可梦生成与广播3. 对战系统4. 道具与通信5. 延伸玩法 安全性设计 技术选…...

python执行测试用例,allure报乱码且未成功生成报告

allure执行测试用例时显示乱码:‘allure’ �����ڲ����ⲿ���Ҳ���ǿ�&am…...

Java求职者面试指南:Spring、Spring Boot、MyBatis框架与计算机基础问题解析

Java求职者面试指南:Spring、Spring Boot、MyBatis框架与计算机基础问题解析 一、第一轮提问(基础概念问题) 1. 请解释Spring框架的核心容器是什么?它在Spring中起到什么作用? Spring框架的核心容器是IoC容器&#…...

C/C++ 中附加包含目录、附加库目录与附加依赖项详解

在 C/C 编程的编译和链接过程中,附加包含目录、附加库目录和附加依赖项是三个至关重要的设置,它们相互配合,确保程序能够正确引用外部资源并顺利构建。虽然在学习过程中,这些概念容易让人混淆,但深入理解它们的作用和联…...

【无标题】湖北理元理律师事务所:债务优化中的生活保障与法律平衡之道

文/法律实务观察组 在债务重组领域,专业机构的核心价值不仅在于减轻债务数字,更在于帮助债务人在履行义务的同时维持基本生活尊严。湖北理元理律师事务所的服务实践表明,合法债务优化需同步实现三重平衡: 法律刚性(债…...