当前位置: 首页 > news >正文

【教程】Github环境配置新手指南(超详细)

文首标志
写在前面:
如果文章对你有帮助,记得点赞关注加收藏一波,利于以后需要的时候复习,多谢支持!


文章目录

  • 一、Github初始设置
    • (一)登入Github
    • (二)新建仓库
  • 二、本地Git配置
    • (一)安装Git
    • (二)进入Git Bash
    • (三)配置用户
    • (四)获取SSH密钥
  • 三、SSH连接Github
    • (一)设置Github密钥
    • (二)绑定SSH连接
  • 四、测试下载Github仓库
    • (一)获取仓库HTTPS链接
    • (二)仓库下载
  • 五、测试上传Github仓库
    • (一)修改仓库文件
    • (二)提交仓库文件
    • (三)推送仓库文件


Github是一个基于Git版本控制系统的代码托管平台,旨在帮助开发者协作、管理和追踪其软件项目的变化。

在这个平台,你可以找到各种代码资源,几乎所有程序员都在Github上建立过代码仓库,你甚至可以找到Linux创始人Linus大神或者DHH等一系列极客的仓库,所有开源项目如今也都会选择在Github平台发布。
在这里插入图片描述

而作为如今最流行的代码托管平台,Github的强大之处体现在以下特点:

  1. 版本控制: GitHub建立在Git版本控制系统之上,使开发者能够跟踪代码的变化、协作处理冲突以及恢复先前的版本。
  2. 代码托管: 开发者可以在GitHub上创建存储库(Repositories),将其代码存储在这些存储库中,并与团队成员或全球开发者社区分享。
  3. 分支管理: GitHub提供强大的分支管理功能,使开发者能够在不影响主要代码的情况下进行并行开发和实验性工作。
  4. 问题跟踪: 通过GitHub的问题跟踪系统,开发者可以报告问题、讨论新功能、提出建议,并在整个团队中进行透明的协作。
  5. 合并请求: 开发者可以通过合并请求向项目的主分支提交更改,同时进行讨论、审查代码,并最终将更改合并到主代码库中。
  6. 团队协作: GitHub支持多用户协作,允许开发者在同一项目中合作,并通过权限系统控制对存储库的访问权限。
  7. 自动化工具: GitHub集成了各种自动化工具和服务,如持续集成(Continuous Integration)和持续部署(Continuous Deployment),以简化开发流程。
  8. 社交网络: 开发者可以在GitHub上关注其他用户、项目或组织,以保持对感兴趣的项目的最新动态。

然而对于使用的初始阶段,Github也需要进行一些环境的初始化搭建,以下将逐步展示初始化的具体操作。

一、Github初始设置

(一)登入Github

进入Github官方网站(https://github.com/),注册或者登录自己的Github账号。具体登录和注册步骤非常简单,这里不作演示。
在这里插入图片描述

(二)新建仓库

登录后即可进入Dashboard(看板)页面。由于代码需要用仓库储存,所以首先需要做的就是新建一个仓库。点击新建即可进入新建仓库页面。
在这里插入图片描述
根据指引,新建一个仓库。我这里新建的库名叫做test,描述则为测试github。
在这里插入图片描述
创建完成自己的库后,下面就需要克隆在Github创建完成的库到本地,以便于自己电脑上的代码可以同步到GitHub所创建的库当中。

二、本地Git配置

(一)安装Git

进入Git官网(https://git-scm.com/)下载Git安装包。
在这里插入图片描述
具体安装不再演示,可以设置一下安装的路径,其他设置均保持默认即可。

(二)进入Git Bash

无论通过任务栏搜索还是创建快捷方式在桌面,进入Git Bash后将看到如下页面。在绿色的文字中,@前是是你的电脑用户名,@后面则是你的计算机型号,紫色文字则是你的系统型号。
在这里插入图片描述

(三)配置用户

本地连接Github需要先配置用户,使用的bash命令如下。

git config --global user.name "github上注册的用户名" # 配置用户名
git config --global user.email "github上注册的邮箱" # 配置用户邮箱
git config --global user.name # 查看配置的用户名
git config --global user.email # 查看配置的用户邮箱

在这里插入图片描述

(四)获取SSH密钥

想要本地同Github连接,必须先获取SSH密钥,获取密钥的Bash命令如下。

ssh-keygen -t rsa -C "GitHub上注册时的邮箱 "

此命令执行进程中需要用户的确认。
在这里插入图片描述
按照文件路径,即可找到SSH密钥的保存文件。值得注意的是,SSH密钥分为公钥和私钥,只有公钥才是我们需要的。
在这里插入图片描述
打开公钥文件(使用记事本就可以打开)可以看到公钥是一串以ssh-rsa为开头,你注册的邮箱为结尾的代码。将这串公钥复制,下一步将使用这串公钥。
在这里插入图片描述

三、SSH连接Github

(一)设置Github密钥

进入Github,点击左边的头像进入设置页面。
在这里插入图片描述
选择SSH与GPG密钥配置页面,建立新SSH密钥。
在这里插入图片描述
这里的标题是命名这个SSH密钥方便管理,我命名此密钥为笔记本(laptop),密钥则是刚才复制的SSH公钥。
在这里插入图片描述
点击添加SSH密钥(Add SSH key)即可成功添加密钥。
在这里插入图片描述

(二)绑定SSH连接

由于Github获得了本地电脑SSH连接的密钥,所以理论上将只要使用就可以连接。返回Git Bash界面,使用以下Bash命令即可绑定与Github的连接。

ssh -T git@github.com

过程中会需要用户确定绑定,输入yes即可确定。返回以下结果即代表已成功绑定。
在这里插入图片描述
对于已经绑定好的Github,接下来还需要进行克隆(下载)到本地和上传到Github两方面的测试来确定一下功能是否可以正常使用。

四、测试下载Github仓库

(一)获取仓库HTTPS链接

进入刚才建立的仓库,在代码选项中即可看到HTTPS链接,复制下来。
在这里插入图片描述

(二)仓库下载

对于下载的仓库,会需要一个文件路径来承载,本人习惯下载到E盘专门建立的github文件夹,方便管理。选择下载路径通过Bash命令进入那个你想要下载的文件路径下才可以。进入那个目录下就可以下载(克隆)Github仓库了。

另外,转移到某个目录下不确定有什么目录和文件也可以用ls命令来看一下。

cd /E/github # 转移到E盘的github目录下
git clone https://github.com/EliasZWC/test.git # 通过HTTPS链接克隆仓库到此文件夹下

出现以下返回结果则显示成功克隆仓库。
在这里插入图片描述
此时打开下载仓库的路径,就可以看到下载好的仓库,仓库中的readme文件也都下载了下来。
在这里插入图片描述
在这里插入图片描述

五、测试上传Github仓库

(一)修改仓库文件

当本地仓库中的项目结构发生了改变,发生的改变想要上传同步都必须存入Git暂存区。
在这里插入图片描述
例如这里我建立了一个test.txt文件,希望上传时则必须存入Git暂存区,Bash命令如下。

cd ./test # 进入到test这个仓库文件目录下
git add test.txt

值得注意的是,我仅改变了一个文件,所以直接使用文件名添加指定文件到Git暂存区即可;但如果修改了多项文件,可以将文件名这里改为.即可将所有修改过的文件添加到暂存区。

(二)提交仓库文件

当文件存入暂存区后,还需要将修改项目从暂存区提交更改到本地仓库,这里需要使用git commit命令。

git commit -m "for test" # 提交信息为for test

使用-m参数可以添加字符串作为提交信息,即注释。出现以下返回结果说明提交成功。
在这里插入图片描述

(三)推送仓库文件

当仓库的更改项都已经提交到本地仓库中,此时就可以将更改后的仓库推送到远程Github仓库中了,Bash命令如下。

git push origin main

这里使用了Git系统的push命令,origin是远程仓库的默认别名,main则是进入test仓库文件夹时可以看到的本地分支名称。回车使用后会出现以下Github登录页面。
在这里插入图片描述

两个登录方式都可以,我这里用了浏览器登录(其实另一个验证码登录也需要进入浏览器)。选择账户继续(continue)授权。
在这里插入图片描述
令Github账户授权给Git库。
在这里插入图片描述
出现此页面即授权成功。
在这里插入图片描述
回到Git Bash页面,查看各种上传数据,果然成功。
在这里插入图片描述
进入Github中的test仓库也可以看到test.txt成功上传,进入个人主页也可以看到贡献值绿了,这说明上传成功。
在这里插入图片描述
日后同样使用Git的addcommitpush这三个命令按同样原理上传文件(仓库)即可。


我是EC,一个永远在学习中的探索者,关注我,让我们一起进步!

文末标志

相关文章:

【教程】Github环境配置新手指南(超详细)

写在前面: 如果文章对你有帮助,记得点赞关注加收藏一波,利于以后需要的时候复习,多谢支持! 文章目录 一、Github初始设置(一)登入Github(二)新建仓库 二、本地Git配置&am…...

突然发现一个很炸裂的平台!

平时小孟会开发很多的项目,很多项目不仅开发的功能比较齐全,而且效果比较炸裂。 今天给大家介绍一个我常用的平台,因含低代码平台,开发相当的快。 1,什么是低代码 低代码包括两种,一种低代码,…...

安卓开发面试题

安卓开发面试题 解释一下 Android 中的四大组件。 答:Android 中的四大组件是 Activity、Service、BroadcastReceiver 和 ContentProvider。其中,Activity 负责界面展示和与用户交互;Service 负责后台服务处理;BroadcastReceiver …...

es6面试题

ES6面试题 var、let、const区别 共同点:都是可以声明变量 区别: 1、var具有变量提升机制,let和const没有 2、var 声明的变量是函数作用域或全局作用域,而 const 和 let 声明的变量是块级作用域。 3、var可以多次声明同一个变量&a…...

Kafka MQ 生产者和消费者

Kafka MQ 生产者和消费者 Kafka 的客户端就是 Kafka 系统的用户,它们被分为两种基本类型:生产者和消费者。除 此之外,还有其他高级客户端 API——用于数据集成的 Kafka Connect API 和用于流式处理 的 Kafka Streams。这些高级客户端 API 使用生产者和消…...

tomcat优化与部署(三)------nignx优化与nginx +tomcat 部署

在目前流行的互联网架构中,Tomcat在目前的网络编程中是举足轻重的,由于Tomcat的运行依赖于JVM,从虚拟机的角度把Tomcat的调整分为外部环境调优 JVM 和 Tomcat 自身调优两部分 Tomcat 是一个流行的开源 Java 服务器,用于托管 Java …...

一个用libcurl多线程下载断言错误问题的排查

某数据下载程序,相同版本的代码,在64位系统中运行正常,但在32位系统中概率性出现断言错误。一旦出现,程序无法正常继续,即使重启亦不行。从年前会上领导提出要追到根,跟到底,到年后的今天&#…...

Docker的安装及MySQL的部署(CentOS版)

目录 1 前言 2 Docker安装步骤 2.1 卸载可能存在的旧版Docker 2.2 配置Docker的yum库 2.2.1 安装yum工具 2.2.2 配置Docker的yum源 2.3 安装Docker 2.4 启动和校验 2.5 配置镜像加速(使用阿里云) 2.5.1 进入控制台 2.5.2 进入容器镜像服务 2.5.3 获取指令并粘贴到…...

css 背景图片居中显示

background 简写 background: #ffffff url(https://profile-avatar.csdnimg.cn/b9abdd57de464582860bf8ade52373b6_misnice.jpg) center center / 100% no-repeat;效果如图:...

Python编程-如何轻松开启一个Web服务?

目录 前言 Flask:轻量级 Django:高级 Bottle:轻量级 Pyramid:灵活且可扩展 Tornado:可扩展、非阻塞 CherryPy:微型 轻量级的Web框架的选择 前言 在Python中开启一个Web服务有多种方法,选…...

鸡肋的Git

1.前言 对于大多数开发人员来说,我们大多数在学习或者工作过程中只关注核心部分,比如说学习Java,可能对于大多数人而言一开始都是从Java基础学起,然后408,Spring,中间件等,当你发现很多高深的技…...

iOS 中的 UITextField 如何设置才能只输入数字和小数点?

刚接触 iOS不久&#xff0c;接到一个iOS项目&#xff0c;其中有一个需求就是在一个 UITextField中只能输入数字和小数点&#xff0c;这个需求在Android中非常容易&#xff0c;只需要设置 <EditTextandroid:id"id/id_et_price"android:layout_width"match_par…...

阿珊详解Vue Router的守卫机制

&#x1f90d; 前端开发工程师、技术日更博主、已过CET6 &#x1f368; 阿珊和她的猫_CSDN博客专家、23年度博客之星前端领域TOP1 &#x1f560; 牛客高级专题作者、打造专栏《前端面试必备》 、《2024面试高频手撕题》 &#x1f35a; 蓝桥云课签约作者、上架课程《Vue.js 和 E…...

python淘宝网页爬虫数据保存到 csv和mysql(selenium)

数据库连接设置&#xff08;表和字段要提前在数据库中建好&#xff09; # 数据库中要插入的表 MYSQL_TABLE goods# MySQL 数据库连接配置,根据自己的本地数据库修改 db_config {host: localhost,port: 3306,user: root,password: ma*****6,database: may2024,charset: utf8mb…...

云计算中仲裁节点和仲裁可用区介绍

在云计算中&#xff0c;仲裁是指当多个节点或实例之间发生争议或冲突时&#xff0c;由一个独立的第三方机构或节点来解决争议或冲突的过程。仲裁通常用于解决云计算中的资源分配、数据一致性、服务质量等问题。 仲裁的作用主要有以下几点&#xff1a; 1. 保证资源分配的公平性…...

Python的requests库发送HTTPS请求时,SSL证书验证的流程

建立连接&#xff1a;当你使用requests库发送HTTPS请求时&#xff0c;它会尝试与目标服务器建立安全的SSL连接。 获取服务器SSL证书&#xff1a;服务器会将自己的SSL证书发送给客户端&#xff08;即你的请求&#xff09;。 验证证书&#xff1a;requests库会验证服务器返回的…...

基于 HBase Phoenix 构建实时数仓(3)—— Phoenix 安装

目录 一、主机规划 二、Phoenix 安装 1. 解压、配置环境 2. 将 phoenix-server-hbase-2.5-5.1.3.jar 文件复制到 HBase 的 lib 目录中 3. 重启 HBase 集群 4. 安装验证 &#xff08;1&#xff09;连接 HBase &#xff08;2&#xff09;视图映射 &#xff08;3&#xf…...

Python IDE

Python IDE 本文为大家推荐几款款不错的 Python IDE&#xff08;集成开发环境&#xff09;&#xff0c;比较推荐 PyCharm&#xff0c;当然你可以根据自己的喜好来选择适合自己的 Python IDE。 PyCharm PyCharm 是由 JetBrains 打造的一款 Python IDE。 PyCharm 具备一般 Pyt…...

Vue3和Vue2的区别

Vue 3 是 Vue.js 的下一个主要版本&#xff0c;它引入了许多新特性和优化&#xff0c;与 Vue 2 相比有一些显著的区别。以下是一些主要的区别&#xff1a; 性能提升: Vue 3 提供了更快的虚拟 DOM&#xff0c;减少了渲染和更新时间。使用 Proxy 重写了响应式系统&#xff0c;使…...

【内推】新风口-大模型独角兽公司minimax

先上内推链接&#xff1a; MiniMax社招内推码: AK3XEJ6 投递链接: https://vrfi1sk8a0.jobs.feishu.cn/s/iFY5WFgE 岗位&#xff1a;前端、后端、算法&#xff0c;基础架构都有&#xff0c;大量hc 公司介绍&#xff1a; 国内同时拥有文本、语音、视觉三种基础大模型能力的创业…...

从零到精通:AI大模型的全方位学习路径解析

本文深入解析了人工智能领域的大型预训练模型&#xff08;大模型&#xff09;&#xff0c;将其比作“超级大脑”&#xff0c;通过海量信息学习世界知识&#xff0c;并详细阐述了学习大模型的重要性和广泛应用场景&#xff0c;如自然语言处理、内容推荐、教育、医疗、商业分析等…...

Snap.Hutao:5个核心功能带你掌握原神Windows桌面工具箱的终极指南

Snap.Hutao&#xff1a;5个核心功能带你掌握原神Windows桌面工具箱的终极指南 【免费下载链接】Snap.Hutao 实用的开源多功能原神工具箱 &#x1f9f0; / Multifunctional Open-Source Genshin Impact Toolkit &#x1f9f0; 项目地址: https://gitcode.com/GitHub_Trending/…...

FutureRestore-GUI:iOS设备降级恢复的专业图形化工具完整指南

FutureRestore-GUI&#xff1a;iOS设备降级恢复的专业图形化工具完整指南 【免费下载链接】FutureRestore-GUI A modern GUI for FutureRestore, with added features to make the process easier. 项目地址: https://gitcode.com/gh_mirrors/fu/FutureRestore-GUI Futu…...

告别串口调试器:用STM32F407的USB CDC打造高速数据通道(实测500KB/s+)

STM32F407 USB CDC高速通信实战&#xff1a;突破传统串口的性能瓶颈 在嵌入式设备与PC通信的传统方案中&#xff0c;UART转USB芯片&#xff08;如CH340、CP2102&#xff09;几乎是标配。但当我们面对需要高速数据传输的物联网设备、工业传感器或数据采集系统时&#xff0c;这种…...

保姆级避坑指南:在Ubuntu 20.04上从零搭建XTDrone仿真环境(ROS Noetic + PX4 v1.13.2)

保姆级避坑指南&#xff1a;在Ubuntu 20.04上从零搭建XTDrone仿真环境&#xff08;ROS Noetic PX4 v1.13.2&#xff09; 当第一次接触XTDrone仿真环境时&#xff0c;许多开发者都会遇到各种意想不到的问题。从ROS安装失败到PX4编译报错&#xff0c;再到Gazebo插件冲突&#xf…...

《思考,快与慢》读书笔记

《思考&#xff0c;快与慢》读书笔记 【免费下载链接】obsidian-weread-plugin Obsidian Weread Plugin is a plugin to sync Weread(微信读书) hightlights and annotations into your Obsidian Vault. 项目地址: https://gitcode.com/gh_mirrors/ob/obsidian-weread-plugin…...

NVIDIA Profile Inspector终极指南:5种实用方法解决显卡性能瓶颈问题

NVIDIA Profile Inspector终极指南&#xff1a;5种实用方法解决显卡性能瓶颈问题 【免费下载链接】nvidiaProfileInspector 项目地址: https://gitcode.com/gh_mirrors/nv/nvidiaProfileInspector NVIDIA Profile Inspector是一款功能强大的显卡驱动配置工具&#xff0…...

FireRed-OCR Studio实战案例:汽车维修手册PDF→带故障码链接的交互式Markdown

FireRed-OCR Studio实战案例&#xff1a;汽车维修手册PDF→带故障码链接的交互式Markdown 1. 项目背景与需求场景 在汽车维修行业&#xff0c;技术人员每天需要查阅大量PDF格式的维修手册。这些手册通常包含&#xff1a; 复杂的故障诊断流程图密密麻麻的参数表格相互引用的故…...

RexUniNLU多场景验证:在微博短文本、论文长段落、公文正式语体中稳定表现

RexUniNLU多场景验证&#xff1a;在微博短文本、论文长段落、公文正式语体中稳定表现 1. 引言&#xff1a;一个模型应对所有中文文本场景 在日常工作中&#xff0c;我们经常需要处理各种类型的中文文本&#xff1a;刷微博时的简短动态、阅读学术论文的长篇段落、撰写正式公文…...

3分钟解锁Windows游戏手柄革命:ViGEmBus虚拟驱动颠覆你的游戏体验

3分钟解锁Windows游戏手柄革命&#xff1a;ViGEmBus虚拟驱动颠覆你的游戏体验 【免费下载链接】ViGEmBus Windows kernel-mode driver emulating well-known USB game controllers. 项目地址: https://gitcode.com/gh_mirrors/vi/ViGEmBus 你是否曾因心爱的Switch手柄无…...