当前位置: 首页 > 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,即马斯克新成立的人工智能…...

观成科技:隐蔽隧道工具Ligolo-ng加密流量分析

1.工具介绍 Ligolo-ng是一款由go编写的高效隧道工具,该工具基于TUN接口实现其功能,利用反向TCP/TLS连接建立一条隐蔽的通信信道,支持使用Let’s Encrypt自动生成证书。Ligolo-ng的通信隐蔽性体现在其支持多种连接方式,适应复杂网…...

树莓派超全系列教程文档--(62)使用rpicam-app通过网络流式传输视频

使用rpicam-app通过网络流式传输视频 使用 rpicam-app 通过网络流式传输视频UDPTCPRTSPlibavGStreamerRTPlibcamerasrc GStreamer 元素 文章来源: http://raspberry.dns8844.cn/documentation 原文网址 使用 rpicam-app 通过网络流式传输视频 本节介绍来自 rpica…...

将对透视变换后的图像使用Otsu进行阈值化,来分离黑色和白色像素。这句话中的Otsu是什么意思?

Otsu 是一种自动阈值化方法,用于将图像分割为前景和背景。它通过最小化图像的类内方差或等价地最大化类间方差来选择最佳阈值。这种方法特别适用于图像的二值化处理,能够自动确定一个阈值,将图像中的像素分为黑色和白色两类。 Otsu 方法的原…...

免费PDF转图片工具

免费PDF转图片工具 一款简单易用的PDF转图片工具,可以将PDF文件快速转换为高质量PNG图片。无需安装复杂的软件,也不需要在线上传文件,保护您的隐私。 工具截图 主要特点 🚀 快速转换:本地转换,无需等待上…...

Xela矩阵三轴触觉传感器的工作原理解析与应用场景

Xela矩阵三轴触觉传感器通过先进技术模拟人类触觉感知,帮助设备实现精确的力测量与位移监测。其核心功能基于磁性三维力测量与空间位移测量,能够捕捉多维触觉信息。该传感器的设计不仅提升了触觉感知的精度,还为机器人、医疗设备和制造业的智…...

Python 高效图像帧提取与视频编码:实战指南

Python 高效图像帧提取与视频编码:实战指南 在音视频处理领域,图像帧提取与视频编码是基础但极具挑战性的任务。Python 结合强大的第三方库(如 OpenCV、FFmpeg、PyAV),可以高效处理视频流,实现快速帧提取、压缩编码等关键功能。本文将深入介绍如何优化这些流程,提高处理…...

VisualXML全新升级 | 新增数据库编辑功能

VisualXML是一个功能强大的网络总线设计工具,专注于简化汽车电子系统中复杂的网络数据设计操作。它支持多种主流总线网络格式的数据编辑(如DBC、LDF、ARXML、HEX等),并能够基于Excel表格的方式生成和转换多种数据库文件。由此&…...

C++_哈希表

本篇文章是对C学习的哈希表部分的学习分享 相信一定会对你有所帮助~ 那咱们废话不多说,直接开始吧! 一、基础概念 1. 哈希核心思想: 哈希函数的作用:通过此函数建立一个Key与存储位置之间的映射关系。理想目标:实现…...

规则与人性的天平——由高考迟到事件引发的思考

当那位身着校服的考生在考场关闭1分钟后狂奔而至,他涨红的脸上写满绝望。铁门内秒针划过的弧度,成为改变人生的残酷抛物线。家长声嘶力竭的哀求与考务人员机械的"这是规定",构成当代中国教育最尖锐的隐喻。 一、刚性规则的必要性 …...

【java面试】微服务篇

【java面试】微服务篇 一、总体框架二、Springcloud(一)Springcloud五大组件(二)服务注册和发现1、Eureka2、Nacos (三)负载均衡1、Ribbon负载均衡流程2、Ribbon负载均衡策略3、自定义负载均衡策略4、总结 …...