Linux工具学习之【git】

简介: git 是一个代码托管平台,它的创始人是大名鼎鼎的 Linux 之父: 林纳斯·托瓦兹,git的诞生可以使我们对已提交的代码历史版本进行回溯,这是一个十分重要的功能,除了查看历史版本外,git 还支持代码合并和打标签等诸多使用功能;简言之,有了 git 以后,我们可以随时随地的对代码进行管理

✨个人主页: Yohifo

🎉所属专栏: Linux学习之旅

🎊每篇一句: 图片来源

🎃操作环境: CentOS 7.6 阿里云远程服务器


Whatever is worth doing is worth doing well.


任何值得去做的事情,都值得把它做好。

a8c1a8cd66438c15b4dcd0d8e6d47d9.png



📘前言


git 是一个代码托管平台,它的创始人是大名鼎鼎的 Linux 之父: 林纳斯·托瓦兹,git的诞生可以使我们对已提交的代码历史版本进行回溯,这是一个十分重要的功能,除了查看历史版本外,git 还支持代码合并和打标签等诸多使用功能;简言之,有了 git 以后,我们可以随时随地的对代码进行管理



b9bc54be28cd8f2635f41c3e89305de.png

📘正文


为了保证良好的阅读体验,本文中使用的都是新账号,可以跟着我一步一步来操作


📖账号注册


git 只是一个工具,要想实现便捷的代码管理,就需要借助第三方平台进行操作,当然第三平台也是基于 git 开发的


f721dc9cc339d80b5ef7b69325a09e8.png

注:BAT也有自己开发的代码托管平台,已经归入自家的云产品中


📃github 与 gitee


代码托管平台有很多,这里我们首选 Github ,理由很简单,全球开发者都在使用的平台,但是由于某些不可控因素,我们可能无法对其进行很好的访问,于是我们就退而求其次,选择 gitee(码云),这是面向国内的平台,访问速度快,全中文显示,值得学习使用

28c6a6df0cfc04e81e6b328bca1c979.png

首先我们需要去到 gitee 的官网注册一个账号


账号注册好后,登录就可以了


📖构建仓库


有了账号之后,我们就可以开始创建属于自己的第一个仓库了


f500ea5fed2fe2c73137a0bf327caf5.png

1fd1326393e4d4d3df0a5085f2432fc.png

仓库创建完成后,还需要进行一个重要步骤:设置开源

因为 gitee 创建仓库后默认是闭源的,而开源又要求仓库内必须有文件,这就是前面创建 README 文件的原因

6cc60748cb5df85c3114c229ad27e02.png

完成如上操作,我们就得到一个属于自己的开源仓库了


📖安装git


当我们有了仓库后,就可以在 Linux 中安装 git 了


$ sudo yum install -y git


安装很简单这里就不展示了

可以通过指令验证是否安装成功

$ git --version

d1d5288bf13d1c4b954b4a21e5c4e2c.png

安装好 git 后,就可以进行初始化操作了


📖配置git


初始化的目的是将我们 Linux 中的 git 与之前在 gitee 上建立的账号取得联系


首先初始化用户名

$ git config --global user.name "zhu-mingyang-668"

4a09dbafc657e53484de16ad925de72.png

然后初始化邮箱


$ git config --global user.email "3364447827@qq.com"

3e0d2e7967c898498e3e21f350c5482.png


可以输入指令验证前两步是否成功执行

$ git config --list

f5af6ac67a25077571b8edb7a715bd1.png


接下来进行比较重要的一步:生成授权证书

输入指令

$ ssh-keygen -t rsa -C "3364447827@qq.com"

2aa6f4feb8448b46e68cf346292d975.png

证书生成后,就可以获取 公匙 了

通过指令查看 公匙


$ cat ~/.ssh/id_rsa.pub

b5c5e86d68d9b0c4b63638a9d978033.png


接下来将复制的公匙粘贴至仓库的公匙设置中

5fbc5d1efd4c242ed6f58af68488487.png

目前所有的初始化工作都已经做完了,可以通过指令验证 Linux 是否已经和远程 gitee 取得了联系


$ ssh git@gitee.com

1fc35c0c9245463124da5f66a5f6b71.png

git 已经部署完成!


📃小结


下面来回顾一下需要进行哪些步骤


sudo yum install -y git //安装git
git --version //验证git是否安装成功
git config --global user.name "zhu-mingyang-668"  //初始化用户名
git config --global user.email "3364447827@qq.com"  //初始化邮箱
git config --list //验证用户名与邮箱是否设置成功
ssh-keygen -t rsa -C "3364447827@qq.com"  //生成公匙
cat ~/.ssh/id_rsa.pub //查看公匙并复制
粘贴公匙至gitee仓库
ssh git@gitee.com //验证git是否配置成功


如果熟悉的话,很快就能配置完成


📖克隆仓库


现在我们先来把远程仓库中的内容克隆下来

$ git clone "https://gitee.com/zhu-mingyang-668/gittest.git"

1fc35c0c9245463124da5f66a5f6b71.png

上面的那串地址在仓库中可以找到

00f24f004eb8233835c4759c4c97ce0.png


📃初始化git


输入指令初始化本地 git 存储库

$ git init

c7da48771bf630550ebb754d2bebb8e.png

可以查看当前远程仓库URL的地址


$ git remote -v

或者

$ git remote show origin

7a5c04b79966ffac0529157188f0296.png


📖代码提交三板斧


接下来看看如何将本地的文件推送至远程仓库


📃add 新增


首先要选择添加信息

$ git add * //新增所有信息
$ git add 文件名 //新增指定文件

6d352494175e334a97e8b2acdd76f26.png

📃commit 添加


接下来将新增的文件信息添加至本地的 .git 文件中

$ git commit -m "添加信息"

4405a7477a00295fcf6b7c0f99f1151.png

注意: 添加的信息要认真对待,因为这个东西就像日志一样,是可以溯源的,除非仓库被删除



📃push 推送


现在本地的仓库 .git 已经记录下相关信息了,可以直接推送至远程仓库


$ git push

77b6b0acef64ee3f0ae0e8b8cdfc137.png


成功完成一次推送后,gitee 上就会记录,形成如下图所示一个小绿点,一天内每推送八次,绿点就会变绿一层,因为这个是新号,所以没什么推送记录

85d2a86238aed24bdde74086d980de8.png

每天都坚持写代码并推送是一件很伟大的事

下面是我的大号推送记录

c39c96a660ba58941fc960724b4b605.png

坚持将所有绿点点亮即可召唤神龙

注:因为是开源的,所以代码可以被所有人看到,不能提交无意义的文件


📖常用指令


下面来列举一些比较常用的指令和注意事项


$ tree .git //查看本地仓库中的提交信息,即所有信息
$ git log //查看历史提交日志,其中的主要内容就是 commit 时填写的内容
$ git rm 文件 //删除不想要的文件
注:git rm 删除文件后,需要再次 commit 并 push,才能完成一次完整的删除工作
$ git status  //可以查看当前已经添加的信息
$ git pull  //拉取远程仓库内容,相当于手动同步
$ git reset --soft HEAD^  //撤销 commit ,前提是还没有 push
1


注意事项:


git rm 删除文件,要记得 commit 和 push,更新仓库状态

每次提交代码,都需要填写邮箱与密码

如果 git 不小心出了问题,可以选择重置个人账户,然后重新把远程仓库中的内容 pull 下来即可

提交的文件名要注意,不能出现特殊字符,比如空格,这是无法识别的

不能随便修改 .git 之类的文件,它主动隐藏起来是有道理的,动了很大概率需要重装

常用 git status 查看是否还有未推送的内容,不要越累计越多

git 很好用,但要谨慎使用,不然解决问题是件很麻烦的事情


📘总结


以上就是关于Linux工具:git 的全部介绍了,git 是一款强大的代码托管工具,它不仅可以供我们随时查看历史提交版本,还能对代码进行远程修改、删除、推送等操作;学好 git 是一件十分重要的事情,毕竟现在很多公司都是在用 git,经典的 github + git 开发神器


如果你觉得本文写的还不错的话,期待留下一个小小的赞👍,你的支持是我分享的最大动力!


如果本文有不足或错误的地方,随时欢迎指出,我会在第一时间改正


目录
相关文章
|
16天前
|
存储 安全 Linux
|
19天前
|
Linux Shell 数据安全/隐私保护
|
29天前
|
监控 Java Linux
Linux系统之安装Ward服务器监控工具
【10月更文挑战第17天】Linux系统之安装Ward服务器监控工具
51 5
Linux系统之安装Ward服务器监控工具
|
1月前
|
JSON JavaScript Linux
Linux系统之安装cook菜谱工具
【10月更文挑战第15天】Linux系统之安装cook菜谱工具
36 2
Linux系统之安装cook菜谱工具
|
15天前
|
存储 开发工具 git
git工具使用教程全讲解
本文介绍了版本控制的概念及其重要性,详细对比了多种版本控制工具,如VSS、CVS、SVN和Git,重点讲解了Git的基本使用方法、工作原理及与SVN的区别。此外,文章还介绍了GitHub、GitLab和Gitee等流行的代码托管平台,以及如何在这些平台上注册账号、创建和管理仓库。最后,文章还提供了如何在IntelliJ IDEA中配置和使用Git的具体步骤。
37 1
|
20天前
|
缓存 监控 Linux
Linux性能分析利器:全面掌握perf工具
【10月更文挑战第18天】 在Linux系统中,性能分析是确保软件运行效率的关键步骤。`perf`工具,作为Linux内核自带的性能分析工具,为开发者提供了强大的性能监控和分析能力。本文将全面介绍`perf`工具的使用,帮助你成为性能优化的高手。
66 1
|
20天前
|
缓存 监控 Linux
掌握Linux性能分析:深入探索perf工具
【10月更文挑战第26天】
25 1
|
1月前
|
Linux 编译器 C语言
【Linux快速入门(一)】Linux与ROS学习之编译基础(gcc编译)
【Linux快速入门(一)】Linux与ROS学习之编译基础(gcc编译)
|
1月前
|
Unix Shell 网络安全
git学习六:(bug总结)git@github.com: Permission denied (publickey).等
本文是关于解决在使用Git和GitHub时遇到的“git@github.com: Permission denied (publickey)”错误的指南。文章提供了详细的步骤,包括确认SSH Agent运行状态、检查密钥配置、确保密钥匹配、验证仓库URL、检查权限和代理设置,以及配置SSH文件。这些步骤帮助用户诊断并解决SSH认证问题。
94 0
|
1月前
|
Linux 开发工具
【Linux快速入门(二)】Linux与ROS学习之编译基础(make编译)
【Linux快速入门(二)】Linux与ROS学习之编译基础(make编译)