【Linux】Linux工具学习之git

在这里插入图片描述
🔥博客主页 小羊失眠啦.
🎥系列专栏《C语言》 《数据结构》 《C++》 《Linux》 《Cpolar》
❤️感谢大家点赞👍收藏⭐评论✍️


在这里插入图片描述

文章目录

  • 前言
  • 一、账号注册
    • 1.1 GitHub与Gitee
  • 二、构建仓库
  • 三、安装git
  • 四、配置git
  • 五、克隆仓库
  • 六、代码提交三板斧
    • 6.1 add 新增
    • 6.2 commit 添加
      • 6.3 push 推送
  • 七、常用指令

前言

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

一、账号注册

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

在这里插入图片描述

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

1.1 GitHub与Gitee

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

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

在这里插入图片描述

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


二、构建仓库

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

在这里插入图片描述

在这里插入图片描述

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

三、安装git

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

sudo yum install -y git

安装很简单这里就不展示了
可以通过指令验证是否安装成功

在这里插入图片描述

如果出现版本号,就表示安装成功了

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


四、配置git

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

首先初始化用户名

git config --global user.name "mai-duya"

在这里插入图片描述

然后初始化邮箱

git config --global user.email "2308711715@qq.com"

在这里插入图片描述

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

git config --list

在这里插入图片描述

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

注意: 需要确保当前家目录中存在 .ssh 目录,如果没有需要自己创建一下

ssh -keygen -t rsa -C "2308711715@qq.com"

在这里插入图片描述

证书生成后,就可以获取 公匙
通过指令查看 公匙

cat ~/.ssh/id_rsa.pub

在这里插入图片描述

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

在这里插入图片描述

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

ssh git@gitee.com

在这里插入图片描述

git 已经部署完成!

小结

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

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

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


五、克隆仓库

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

① 点击 克隆/下载
② 选择 HTTPS
③ 选择复制链接
④ 在命令行中输入指令 git clone 加上复制的链接;

在这里插入图片描述

⑤输入码云账户名(注册使用手机号)与密码(码云账号的密码)

⑥显示文件列表,会出现此时当前目录下多了一个远端仓库名的目录

在这里插入图片描述

初始化

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

在这里插入图片描述

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

git remote -v
//或者
git remote show origin

在这里插入图片描述


六、代码提交三板斧

6.1 add 新增

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

首先要选择添加信息

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

在这里插入图片描述

6.2 commit 添加

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

git commit -m "添加信息"

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

在这里插入图片描述

6.3 push 推送

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

git push

在这里插入图片描述

成功完成一次推送后,gitee 上就会记录,形成一个小绿点,一天内每推送八次,绿点就会变绿一层


七、常用指令

 git init   # 初始化一个Git仓库git add .  # 将所有修改添加到暂存区git commit -m "comment"  # 将暂存区的修改提交到本地仓库 并填写注释信息git clone http://123%40qq.com:xxx@git.xxx.com/xxx  # http:#邮箱(或用户名):密码@仓库 下载一个项目和它的整个代码历史git push origin master # 将本地的 master 分支推送到远程的 master 分支中git log  # 查看 git 的 commit 信息,每次提交的信息包括注释在内,从最新提交到最久提交git log --pretty=oneline  # 将commit 信息简化成一行显示git status  # 查看仓库的状态git branch [-r]  # 列出所有本地分支,-r 列出所有远程分支git branch [branch-name]  # 新建一个分支,但依然停留在当前分支git checkout -b [branch]  # 新建一个分支,并切换到该分支git checkout [branch-name]  # 切换到指定分支,并更新工作区git branch -d [branch-name]  # 删除分支git push origin --delete [branch-name]  # 删除远程分支git fetch [remote]  # 下载远程仓库的所有变动git remote add [shortname] [url]  # 增加一个新的远程仓库,并命名git pull [remote] [branch]  # 取回远程仓库的变化,并与本地分支合并git checkout [file]  # 恢复暂存区的指定文件到工作区git reset [file]  # 重置暂存区的指定文件,与上一次commit保持一致,但工作区不变

注意事项

  • git rm 删除文件,要记得 commit 和 push,更新仓库状态
  • 每次提交代码,都需要填写邮箱与密码
  • 如果 git不小心出了问题,可以选择重置个人账户,然后重新把远程仓库中的内容 pull 下来即可
  • 提交的文件名要注意,不能出现特殊字符,比如空格,这是无法识别的
  • 不能随便修改 .git 之类的文件,它主动隐藏起来是有道理的,动了很大概率需要重装
  • 常用 git status 查看是否还有未推送的内容,不要越累计越多
  • git 很好用,但要谨慎使用,不然解决问题是件很麻烦的事情

在这里插入图片描述

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

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

相关文章

详解库和程序运行过程

我最近开了几个专栏,诚信互三! > |||《算法专栏》::刷题教程来自网站《代码随想录》。||| > |||《C专栏》::记录我学习C的经历,看完你一定会有收获。||| > |||《Linux专栏》&#xff1…

lvgl 窗口 windows lv_port_win_visual_studio 版本 已解决

不知道的东西,不知道lvgl窗口。一切从未知开始 lv_port_win_visual_studio 主分支 对应的分支 v7版本更新git submodule update --init --recursive同步 lvgl代码随后打开 visualSudio 打开.sln 文件 编译 release模式 允许 一切正常代码部分

考研数学基础差,跟宋浩?

宋浩老师的课程我大一的时候听过,是我大一高数的救命恩人! 不过,考研的针对性很强,基础差听宋浩老师的课程不如直接听汤家凤老师的课程,因为汤家凤老师的课程是专门为考研数学设计的,针对性很强。 汤家凤老…

K8S之DaemonSet控制器

DaemonSet控制器 概念、原理解读、应用场景概述工作原理典型的应用场景介绍DaemonSet 与 Deployment 的区别 解读资源清单文件实践案例 概念、原理解读、应用场景 概述 DaemonSet控制器能够确保K8S集群所有的节点都分别运行一个相同的pod副本; 当集群中增加node节…

Django之Celery篇(一)

一、介绍 Celery是由Python开发、简单、灵活、可靠的分布式任务队列,是一个处理异步任务的框架,其本质是生产者消费者模型,生产者发送任务到消息队列,消费者负责处理任务。 Celery侧重于实时操作,但对调度支持也很好,其每天可以处理数以百万计的任务。特点: 简单:熟悉…

监控系统Prometheus--入门

文章目录 Prometheus特点易于管理监控服务的内部运行状态强大的数据模型强大的查询语言PromQL高效可扩展易于集成可视化开放性 Prometheus架构Prometheus 生态圈组件架构理解 Prometheus的安装安装Prometheus Server上传安装包解压安装包修改配置文件 prometheus.yml 安装Pushg…

Halcon 3D 平面拟合(区域采样、Z值过滤、平面拟合、平面移动)

Halcon 3D 平面拟合(区域采样、Z值过滤、平面拟合、平面移动) 链接:https://pan.baidu.com/s/1UfFyZ6y-EFq9jy0T_DTJGA 提取码:ewdi * 1.读取图片 ****************

数组三(冒泡排序、二分查找)

目录 冒泡排序算法 冒泡排序的基础算法 冒泡排序的优化算法 二分法查找 冒泡排序算法 冒泡排序是最常用的排序算法,在笔试中也非常常见,能手写出冒泡排序算法可以说是 基本的素养。 冒泡排序的基础算法 冒泡排序算法重复地走访过要排序的数列&#…

2024-03-22 问AI: 介绍一下深度学习中的 sigmoid函数

文心一言 Sigmoid函数是深度学习中常用的一种激活函数,主要用于将神经元的输出值压缩到0和1之间。这种特性使得sigmoid函数在二分类问题中特别有用,因为输出值可以被解释为属于某个类别的概率。 sigmoid函数的数学表达式为: σ(x) 1 / (1…

Pytorch CUDA Reflect Padding 算子实现详解

CUDA 简介 CUDA(Compute Unified Device Architecture)是由NVIDIA开发的一种并行计算平台和应用编程接口(API),允许软件开发者和软件工程师使用NVIDIA的图形处理单元(GPU)进行通用计算。自2007…

NodeJS 集群模块: 为App创建集群实例

NodeJS 集群模块: 为App创建集群实例 目录 NodeJS 集群模块: 为App创建集群实例Node.js 集群介绍:终极扩展策略使用集群模块开始扩展 Node.js扩展 Node.js 的两种集群策略使用集群受益的 Node.js 应用程序示例没有集群的 Node.js:不可伸缩的原则集群操作:一个扩展的 Node.js…

Redis 配置与优化

目录 一、Redis 介绍 1.1、关系数据库与非关系型数据库 1)关系型数据库 2)非关系型数据库 3)非关系型数据库产生背景 1.2、Redis 基础 1)Redis 简介 2)Redis 安装部署 3)配置参数 1.3、Redi…

【聊一聊】三种工厂模式的创建

三种工厂模式的创建 今天终于星期五了,最近由于碰上一个需求,中间涉及Oracle改国产数据库的改造,好家伙,差点没把我忙坏了 不过今天终于有空啦!~哈哈哈 这篇本应该是上周就结束的,但是拖到今天,我们就今天进行结束 (还有一件快乐的事情,就是我遇见自己喜欢的人啦!嘻嘻) 好啦!~话…

【AI】发现一款运行成本较低的SelfHosting语言模型

【背景】 作为一个想构建局域网AI服务的屌丝,一直苦恼的自然是有限的资源下有没有对Spec要求低一点的SelfHosting的AI服务框架了。今天给大家介绍这款听起来有点希望,但是我也还没试验过,感兴趣的可以去尝试看看。 【介绍】 大模型生成式AI与别的技术不同,由于资源要求高…

Linux第83步_采用“Linux内核定时器”点灯以及相关API函数

“Linux内核定时器”是采用“系统时钟”来实现的。它不是周期性运行的,一旦发生超时就会自动关闭。如果想要实现周期性定时,那么就需要在定时处理函数中重新开启定时器。 Limux内核使用全局变量jiffies来记录“系统从启动以来的系统节拍数”&#xff0c…

路由器的端口映射能实现什么?

路由器的端口映射是一项重要的网络配置功能,它可以帮助实现局域网内外的设备之间的通信。通过端口映射,我们可以在公网上访问局域网内的设备,方便的进行远程访问、共享文件和资源等操作。 什么是端口映射? 在介绍端口映射之前&am…

【springcloud开发教程】spring cloud config——分布式配置

什么是SpringCloud config分布式配置中心? spring cloud config 为微服务架构中的微服务提供集中化的外部支持,配置服务器为各个不同微服务应用的所有环节提供了一个中心化的外部配置。 spring cloud config 分为服务端和客户端两部分。 服务端也称为 …

MySQL 查询性能优化

优质博文:IT-BLOG-CN​ 如果把查询看作是一个任务,那么它由一些列子任务组成,每个子任务都会消耗一定的时间。如果要优化查询,实际上要优化其子任务,要么消除其中一些子任务,要么减少子任务的执行次数。通常…

【prometheus-operator】k8s监控redis

1、准备exporter https://github.com/oliver006/redis_exporter oliver006-redis_exporter-amd64.tar # 安装镜像 docker load -i oliver006-redis_exporter-amd64.tar # 上传镜像 docker tag oliver006/redis_exporter ip/monitor/redis_exporter:latest docker push ip/mo…

DevEco Profiler性能调优工具简介

一、概述 应用或服务运行期间可能出现响应速度慢、动画播放不流畅、列表拖动卡顿、应用崩溃或耗电量过高、发烫、交互延迟等现象,这些现象表明应用或服务可能存在性能问题。造成性能问题的原因可能是业务逻辑、应用代码对系统API的误用、对ArkTS对象的不合理持有导致内存泄露…