【Linux】git三板斧教程(免密提交配置)

news2024/10/5 18:28:50

git

  • 什么是git?
  • Linux下安装git
  • 基于git的一些商业网站介绍
  • 在gitee上创建仓库
    • 注册账号
    • 创建项目
    • 将仓库克隆到本地
  • git三板斧
    • git三板斧第一招:git add
    • 三板斧第二招:git commit
    • 三板斧第三招:git push
  • git免密码提交
  • git log查看提交日志
  • git status查看当前代码库的状态
  • 🍀小结🍀

🎉博客主页:小智_x0___0x_

🎉欢迎关注:👍点赞🙌收藏✍️留言

🎉系列专栏:Linux入门到精通

🎉代码仓库:小智的代码仓库

什么是git?

Git是一种分布式版本控制系统,它可以记录文件的改动历史,并且可以多人协同开发。Git最初由LinusTorvalds开发,用于管理Linux内核的开发。Git的工作方式是将代码库完整地复制到每个开发者的本地,这样每个人都可以在本地进行修改和提交,然后再将修改推送到主代码库中。Git还提供了分支管理、标签管理、代码合并等功能,非常适合大型项目的开发。

Linux下安装git

我们只需在终端输入以下代码进行安装:

yum install git

基于git的一些商业网站介绍

GitHubGitee都是基于Git的代码托管平台,主要提供代码托管、版本控制、协作开发、问题跟踪、代码审查等功能。两者的主要区别在于运营公司和使用对象。

  • GitHub是由美国GitHub公司运营的全球最大的开源社区和代码托管平台,主要面向全球的开发者和企业用户,提供了全球范围内的代码托管、协作开发和社交网络等功能。GitHub的用户界面简洁美观,社交化程度高,支持多种编程语言和开发工具,同时也提供了丰富的第三方集成和API接口。
  • Gitee是由中国Git社区运营的国内开源社区和代码托管平台,主要面向中国的开发者和企业用户,提供了类似于GitHub的功能,同时也支持国内的高速访问和多种编程语言。Gitee还提供了一些特色功能,如码云加速、企业版服务、私有仓库等,以满足不同用户的需求。

总的来说,GitHub和Gitee都是优秀的Git托管平台,各有特色,在不同的场景下可以选择不同的平台。如果您需要面向全球的开源社区或寻找更广泛的合作伙伴,可以选择GitHub;如果您需要面向中国市场或寻找更多本土化服务和支持,可以选择Gitee。

由于GitHub网站不稳定不容易访问,所以建议大家使用gitee。

在gitee上创建仓库

注册账号

这个比较简单,参考官网(点击即可跳转至官网)的提示即可,需要进行邮箱校验。

创建项目

登陆成功之后,进入个人主页,点击右上角+号下面的新建仓库:
在这里插入图片描述
点击新建仓库之后进入:
在这里插入图片描述
在这里插入图片描述
最后再点击创建即可。
接着就会跳转到下面这个界面。
在这里插入图片描述
其中这里面的.gitignore是一个Git配置文件,用于指定哪些文件或目录应该被Git忽略,不进行版本控制。在Git中,有些文件或目录是不需要进行版本控制的,如编译生成的文件、日志文件、临时文件等。如果不将这些文件或目录加入到.gitignore文件中,它们会被Git纳入版本控制,增加代码库的体积和复杂度,并且可能会引起一些问题,如冲突、误删等。
在这里插入图片描述
以上面结尾的文件都不会被提交。简单来说就是一个过滤文件。
在这里插入图片描述
此时点击仓库中的管理界面,将仓库开源,勾选上三个“我承诺”完成后保存即可。

将仓库克隆到本地

复制仓库对应的链接。
在这里插入图片描述
进入终端输入以下指令:

git clone [ur1]

其中ur1是刚刚建立好的项目的链接。
在这里插入图片描述
这样子就可以将我们远程的仓库克隆到本地了。
在这里插入图片描述
进入这个仓库可以看到本地也有跟远程一样的文件。
用-a选项来查看隐藏文件:
在这里插入图片描述
,git就是我们本地的仓库,里面的内容不能去改。

git三板斧

我们先创建一个普通文件:
在这里插入图片描述

git三板斧第一招:git add

此时我们想要将test.c文件上传,可以先使用以下指令:

git add [文件名]

一般我们直接使用git add . 就可以了"."代表当前目录下的所有没有被上传的文件,除去.gitignore中过滤掉的文件。

三板斧第二招:git commit

提交改动到本地:

git commit -m "提交信息(必须填写)"

在这里插入图片描述
这一步有的同学可能是这个界面。
在这里插入图片描述
此时就需要输入这两行指令来解决问题:

git config --global user.email "你的邮箱"

这里的邮箱尽量写你注册gitee时候的邮箱,否则提交推送成功之后不会出现小绿点。

git config --global user.name "你的名字"

回车之后再次git commit 就可以了。

三板斧第三招:git push

同步到远端服务器上

git push

这里注意需要填入用户名密码,同步成功之后,刷新以下gitee页面就可以看到代码的改动了。
在这里插入图片描述
这里注意输入密码时候,密码也是不会回显的。
此时我们再来刷新我们gitee页面。
在这里插入图片描述
可以发现我们刚刚创建的test.c被同步到了远端服务器上,同时点击文件也可以查看文件的内容。

git免密码提交

这里不建议初学者使用配置免密码提交,先使用密码提交个半年左右,熟悉了再配置免密码配置。
基本步骤是linux下面可以直接创建.git-credential文件,命令如下:

  1. 创建文件,进入文件,输入内容:
cd ~
touch .git-credentials
vim .git-credentials
https://{username}:{password}@gitee.com
  1. 在终端下输入:
git config --global credential.helper store
  1. 打开~/.gitconfig文件,会发现多了一项:
[credential]
helper = store

这样就配置好了。

git log查看提交日志

git log 是 Git 的一个命令,用于查看提交历史。它可以显示代码库中每个提交的详细信息,包括提交作者、提交时间、提交信息、修改的文件等,以便于开发者进行代码审查、版本比较和回溯等操作。
在这里插入图片描述

git status查看当前代码库的状态

git status 是 Git 的一个命令,用于查看当前代码库的状态。它可以显示当前代码库中未提交的修改、未加入版本控制的文件、暂存区中的文件等信息,以便于开发者了解代码库的状态并进行相应的操作。

git status 命令的输出信息包括:

  • 当前分支的名称。
  • 未加入版本控制的文件列表。
  • 已修改但未暂存的文件列表。
  • 已暂存但未提交的文件列表。
  • 当前分支与远程分支的差异信息

当我们没有新的文件要提交时,输入指令:git status>
在这里插入图片描述
当我们创建一个新文件的时候在使用git status指令>
在这里插入图片描述
这里则会显示我们没有提交的文件。

🍀小结🍀

今天我们学习了Linux项目自动化构建工具-make/makefile相信大家看完有一定的收获。
种一棵树的最好时间是十年前,其次是现在! 把握好当下,合理利用时间努力奋斗,相信大家一定会实现自己的目标!加油!创作不易,辛苦各位小伙伴们动动小手,三连一波💕💕~~~,本文中也有不足之处,欢迎各位随时私信点评指正!

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

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

相关文章

通俗易懂的期权入门知识汇总,硅铁期权即将上市适合用那种期权策略管理风险

【1】期权:是指某一标的物的买卖权或选择权。具有在某一限定时期内按某一指定的价格买进或卖出某一特定商品或合约的权利。这种权利是买进者拥有的一种权利,并非一种义务 【2】保证金:为确保执行,期权卖方存入的担保金 【3】多头…

Python flask入门教程(flask教程)(轻量级Web框架)

文章目录 flask能做什么?1. 路由和视图函数2. 模板引擎3. 表单处理4. 数据库集成5. 用户认证和授权6. 文件上传和下载7. RESTful API开发拓展:什么是RESTful API开发 8. 扩展性9. 轻量级和灵活性总结 flask入门1. 安装Flask2. 创建Flask应用3. 定义路由和…

深入理解MySQL事务和@Transactional注解:相似之处与作用解析

前言: 今天碰到几个面试人把Transactional注解,和mysql事务搞混,刻意来一篇讲一下这两者的区别,拒绝死记防止新人面试尴尬 先从简单介绍开始 MySQL事务 MySQL事务是数据库管理系统提供的一种机制,用于执行一组数据库操作,这些操作要么全部成功提交&a…

weblogic系列所有漏洞复现弱口令、CVE-2023-21839、CVE-2018-2894、CVE-2017-10271

文章目录 weblogic介绍:所用工具: weblogic弱口令漏洞详情:复现: Weblogic未授权远程代码执行漏洞 (CVE-2023-21839):漏洞详情:复现: Weblogic任意文件上传CVE-2018-2894漏洞描述:复现: 提提神Weblogic反序列化漏洞&am…

详解SystemVerilog中time slot的调度

1. 前言 本文讲一下SystemVerilog的time slot里的regions以及events的调度。SystemVerilog语言是根据离散事件执行模型定义的,由events驱动。SystemVerilog描述是由连接的执行thread或processes组成。Process是可衡量的,也具有状态,并且可以…

Java中操作文件(二)

目录 一、什么是数据流 二、InputStream概述 2.1、方法 2.2、说明 三、FileInputStream概述 3.1、构造方法 3.2、利用Scanner进行字符串读取,简化操作 四、OutputStream概述 4.1、方法 4.2、PrinterWriter简化写操作 五、小程序练习 示例1 示例…

3D渲染的最佳CPU推荐, 目前流行的 3D 渲染 CPU

在 3D 渲染领域,选择合适的 CPU 对于确保最佳性能和生产力至关重要。CPU 充当渲染工作站的动力源,处理复杂的计算并高效执行渲染任务。市场上有众多选择,了解 2023 年最流行的 3D 渲染 CPU 非常重要。 AMD 锐龙 9 5950X AMD Ryzen 9 5950X …

r‘./csv‘和f‘./csv‘有啥区别

r./csv 和 f./csv 在文件路径中具有不同的含义和用途。 r./csv:这是使用原始字符串(raw string)表示法来表示文件路径。在原始字符串中,反斜杠字符(\)不会被视为转义字符,而是作为普通字符。因…

Linux之CentOS_7.9部署MySQL_5.7静默安装实测验证安装以及测试连接全过程实操手册

前言:前面记录了Windows环境的MySQL的安装卸载及相关测试评估,这里记录下在Linux下MySQL的静默部署方式。当然还有更多的其他部署,大家可根据自身环境及学习来了解。 环境: 1、CentOS-7.9-x86_64-DVD-2009.iso 2、MySQL-5.7.42-…

7.4 【Linux】设置开机挂载

7.4.1 开机挂载 /etc/fstab 及 /etc/mtab 根目录 / 是必须挂载的﹐而且一定要先于其它 mount point 被挂载进来。 其它 mount point 必须为已创建的目录﹐可任意指定﹐但一定要遵守必须的系统目录架构原则 (FHS) 所有 mount point 在同一时间之内﹐只…

Go Mutex 错过后悔的重要知识点

Go Mutex 的基本用法 Mutex 我们一般只会用到它的两个方法: Lock:获取互斥锁。(只会有一个协程可以获取到锁,通常用在临界区开始的地方。)Unlock: 释放互斥锁。(释放获取到的锁,通常用在临界区结束的地方。) Mutex 的模型可以用…

基于STM32麦克风阵列音频信号处理系统设计

v hezkz17进数字音频系统研究开发交流答疑 附录: ADAU1452音频处理系统

飞行动力学 - 第3节-滑翔性能、喷气式飞机最大最小速度 之 基础点摘要

飞行动力学 - 第3节-滑翔性能、喷气式飞机最大最小速度 之 基础点摘要 1. 滑翔机1.1 滑翔动力学方程1.2 滑翔机升阻比1.3 滑翔机性能 2. 喷气式飞机2.1 最小推力2.2 最大、最小速度 3. 参考资料 1. 滑翔机 1.1 滑翔动力学方程 注:这里的航迹角 γ \gamma γ按照右…

基于Python图像的作物种子数统计算法设计与应用(源码+文档+演示视频)

基于图像的作物种子数统计算法设计运用Qt作为开发工具,PyTorch库的使用,算法实现等。具体分为以下三部分:第一部分,采用数码影像技术对黄豆粒进行影像辨识技术。第二部分,前端页面功能包括图像识别技术模块、光源技术模…

音频转文字怎么弄?这几个音频转文字方法可以轻松实现

想象一下,你正在开车或忙着做家务,突然接到一通重要电话,却又没有纸和笔可以记录下来。这是应该怎么办呢,其实我们可以使用录音转文字的软件帮助我们把语音在线转换成文字就能轻松解决这个问题啦,但是又有小伙伴可能会…

考完PMP/NPDP认证,项目经理们最后都找到了什么样的工作?

早上好,我是老原。 有很多粉丝朋友都好奇,考完PMP/NPDP认证,到底能找到一份什么工作? 首先,你要知道一个问题:有工作的人选择考证的几率更大。 有的人是因为职场发展遇到了瓶颈期,想要利用考…

类与对象 (一)

引子 C语言是面向过程的,关注的是过程,分析出求解问题的步骤,通过函数调用逐步解决问题。 C是基于面向对象的,关注的是对象,将一件事情拆分成不同的对象,靠对象之间的交互完成。 什么是对象?…

MYSQL进阶-索引的组合索引

回城传送–》《100天精通MYSQL从入门到就业》 文章目录 一、练习题目二、SQL思路SQL进阶-索引的组合索引初始化数据解法什么是组合索引为什么要使用组合索引如何使用组合索引 答案参考: 一、练习题目 题目链接难度SQL进阶-索引的组合索引★★★☆☆ 二、SQL思路 …

C++初阶之类和对象(中)

类和对象(中) 1.类的6个默认成员函数2. 构造函数2.1 概念2.2 特性 3.析构函数3.1 概念3.2 特性 4. 拷贝构造函数4.1 概念4.2 特征 5 运算符重载5.1 运算符重载5.2 赋值运算符重载5.3 前置和后置重载 6.日期类的实现7.const成员8.取地址及const取地址操作…

Markdown 进阶语法:Mermaid 绘图 (一) - 流程图 (Flowchart)

✅作者简介:人工智能专业本科在读,喜欢计算机与编程,写博客记录自己的学习历程。 🍎个人主页:小嗷犬的个人主页 🍊个人网站:小嗷犬的技术小站 🥭个人信条:为天地立心&…