Linux工具 - 耀眼的git

news/2024/4/28 21:37:24

在这里插入图片描述

~~~~

前言

提起github,相信你或多或少都听过它的大名,它是全球程序员的圣地,是计算机开源精神的代表。而github就是在git的基础上搭建起来的,全球有非常多的人在使用着git工具。本文将主要介绍在Linux系统中如何方面快捷的使用git工具来帮助我们进行学习和编程。
码云Gitee官网
Github官网


耀眼的Git

Git是什么(本质)

简单来说,git是一款进行**版本管理(控制)**工具。
git管理着用户上传的所有文件,以及用户修改之后的文件。git对这些文件进行版本管理,这样如果用户修改之后的文件不符合其预期(如甲方刁难),那么用户想要选择回退到修改之前文件版本时,又因为git管理着从文件创建开始的每一个修改版本,所以此时git可以直接给用户该文件修改之前的版本,便于用户对该文件重新修改。
简单示意图:
image.png

Git出现的背景(本着开源的精神)

git是如何出现的,还要从雷纳斯托瓦兹开源Linux系统之后说起。
当是全世界范围的很多程序员都会参与Linux开源社区的建设,其中一项就是为Linux内核贡献代码,这些代码在合并之前需要先经过雷纳斯托瓦兹的审查,通过了才会出现在Linux源码中。雷纳斯托瓦兹每天的时间很大部分都被审查代码的工作缠住了,忙得不行,为了让自己从审查代码的工作中解放出来,雷纳斯托瓦兹开始寻找是否有能够替代自己的工具。
幸运的是,当时已经有商业公司开发出来了进行版本控制的工具,不幸的是,这个工具是收费的。虽然Linux开源社区可以负担得起这项费用,但是Linux作为开源操作系统,却使用了付费的工具,这不符合开源社区的理念,所以开始也没有使用这个付费的版本控制工具。之后的一段时间,雷纳斯托瓦兹仍然被困在代码的审查工作中,这款付费的版本控制工具所属公司的老板主动提出了让Linux开源社区免费使用这款工具。之后的很长时间,Linux开源社区都在使用这款版本控制工具,雷纳斯托瓦兹也从审查代码的工作中解放了出来,这项工作就在网上由所有人都能共同负责了。
但是不妙的事情发生了,Linux社区的部分爱好学习的程序员为了学习这个版本控制工具是如何编写的而进行了逆向破解,并公开在了Linux社区上,并且被前文中免费给Linux社区使用版本控制工具的公司头头发现了,于是Linux社区就不被允许使用这款工具了。之后的一段时间内,雷纳斯托瓦兹又被迫陷入到了代码审查的漩涡中,雷纳斯托瓦兹终于受够了这项工作,于是花了几周时间自己写了一个初版版本控制工具并命名为git,之后又开源了出版的git工具。Linux社区的程序员边顺理成章的涌入git的怀抱,于是git疯狂迭代,Linux内核代码也使用git进行版本控制,代码审查的工作也交给了全世界的程序员,之后git越来越流行,直到今天。

现在的github和gitee都是对git进行商业包装之后的产品。

在命令行中使用Git(Come on 来使用Git吧)

.git文件说明

git工具中经常出现仓库一词,那么仓库到底是什么呢?
其实就是一个文件目录,在本地仓库中所指的就是.git目录。在.git目录中包含了管理整个仓库所需的所有信息和数据(如历史记录、分支、标签、配置信息等),是git仓库最重要的部分。
image.png

新建仓库

在github或gitee中新建一个仓库
image.png
image.png
image.png

git clone 克隆云端仓库到本地

image.png
image.png
在Linux中

git clone https://gitee.com/用户名/test.git

image.png

git add

将工作目录中的文件添加到暂存区(stage area)

git add 文件名

image.png

git commit -m

将暂存区中的文件提交到本地版本库(本地仓库.git)

git commit -m '本次提交概要'

image.png

git push

把本地仓库的文件推送到远端github或gitee

git push

image.png

git pull

拉取远端的仓库并合并到本地仓库

git pull

git status

显示当前工作目录的状态信息

git status

image.png

git log

显示过往所有的提交信息,且提交信息不能被修改
对于公开仓库,所有人都能看到你的提交信息,所以提交信息一般不要乱写。

git log

image.png

git mv

移动工作目录的文件或修改工作目录的文件名

git mv 原文件名 新文件名

修改文件名
image.png
移动文件
image.png

git rm

删除工作目录的文件或目录

git rm 文件名
git rm -rf 目录

删除文件hello
image.png
删除目录dir
image.png

配置免密码提交

在命令行操作不熟悉的时候,不推荐配置免密码,虽然每次提交都不用再输入密码了,但如果是git新手,应该要以熟悉基本操作为主,先把命令熟练使用起来,多数几次密码也就是顺手的事。
http://t.csdnimg.cn/4QBOd


结语

本文主要介绍了git工具在命令行中使用的常用命令,特别是三板斧(git add/git commit -m/ git push)。熟能生巧才是真理。


T h e E n d TheEnd TheEnd

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

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

相关文章

vue项目设置通过IP和localhost可同时访问

vue项目设置通过IP和localhost可同时访问 打开package.json文件 在要运行的分支下添加host,最后重新运行项目 重新运行项目 "dev": "webpack-dev-server --inline --progress --config build/webpack.dev.conf.js --host 0.0.0.0",

Spring6--基于注解管理Bean / 手写IOC

1. 基于注入管理Bean概念 Java 5 引入了注解(Annotation)这一特性,它允许程序员在源代码中插入元数据,这些元数据以标签形式存在,可以被编译器、类加载器或运行时环境所识别和处理。注解可以帮助开发者在不修改业务逻…

cannot find -xml2: No such file or directory的解决方法

一,问题现象 在编译库的时候出现如下图所示的报错:C:/msys64/mingw32/bin/…/lib/gcc/i686-w64-mingw32/13.2.0/…/…/…/…/i686-w64-mingw32/bin/ld.exe: ca nnot find -lxml2: No such file or directory collect2.exe: error: ld returned 1 exit s…

高性能 MySQL 第四版(GPT 重译)(三)

第八章:查询性能优化 在前几章中,我们解释了模式优化和索引,这对于高性能是必要的。但这还不够——您还需要设计良好的查询。如果您的查询不好,即使是设计最佳的模式和索引也不会表现良好。 查询优化、索引优化和模式优化是相辅…

【类脑智能】脑网络通信模型分类及量化指标(附思维导图)

脑网络通信模型分类及量化指标(附思维导图) 参考论文:Brain network communication_ concepts, models and applications 概念 脑网络通信模型是一种使用图论和网络科学概念来描述和量化大脑结构中信息传递的模型。这种模型可以帮助研究人员理解神经信号在大脑内…

智能合约语言(eDSL)—— 使用rust实现eDSL的原理

为理解rust变成eDSL的实现原理,我们需要简单了解元编程与宏的概念,元编程被描述成一种计算机程序可以将代码看待成数据的能力,使用元编程技术编写的程序能够像普通程序在运行时更新、替换变量那样操作更新、替换代码。宏在 Rust 语言中是一种功能&#x…