【教程】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,一个永远在学习中的探索者,关注我,让我们一起进步!

文末标志

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

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

相关文章

在Leaflet中使用Turf.js生成范围多边形的两种实现方式

目录 前言 一、场景需求 1、Leaflet.js的不足 2、Turf.js 二、原始数据展示 1、点位数据展示 2、定义样式 3、定位数据初始化 三、Turfjs中bbox生成 1、官网讲解 2、轨迹bbox生成 四、Turfjs生成外包多边形 1、官网例子 2、凸多边形生成 总结 前言 在一些共享出…

机器学习--循环神经网路(RNN)2

在这篇文章中,我们介绍一下其他的RNN。 一.深层RNN 循环神经网络的架构是可以任意设计的,之前提到的 RNN 只有一个隐藏层,但 RNN 也可以是深层的。比如把 xt 丢进去之后,它可以通过一个隐藏层,再通过第二个隐藏层&am…

三  超级数据查看器   讲解稿    主界面和系统功能介绍

三 超级数据查看器 讲解稿 主界面和系统功能介绍 APP百度下载地址 下载地址4 ​讲解稿全文: 大家好。 今天我们讲解一下,超级数据查看器主界面。 首先,我们打开超级数据查看器。 打开之后,进入的第一个界面就是主界面。这个页面由三…

网络编程---网络编程入门、UDP通信程序、TCP通信程序

1.网络编程入门 1.网络编程概述 网络编程: 在网络通信协议下,实现网络互连的不同计算机上运行的程序间可以进行数据传输 计算机网络: 是指将地理位置不同的具有独立功能的多台计算机及其外部设备,通过通信线路连接起来&#…

docker安装ES、LogStash、Kibana

文章目录 一、安装Elasticsearch1. 安装Elasticsearch2. 安装IK分词器3. elasticsearch-head 监控的插件4. 配置跨域 二、安装LogStash三、安装kibana四、SpringBoot集成LogStash,将日志输出到ES中五、 启动项目,监控项目运行 提示:以下是本篇…

ABAP接口部分-C#调用RFC

目录 ABAP接口部分-C#调用RFC创建表结构创建RFC函数创建C#项目引用SAP .Net Connector包绘制窗口的控件最终布局代码 项目配置报错SAP.Middleware.Connector.RfcDestinationManager报错SAP.Middleware.Connector.RfcLoginexception报错SAP.Middleware.Connector.RfcInvalidStat…

Docker基础教程 - 8 镜像仓库

更好的阅读体验:点这里 ( www.doubibiji.com ) 8 镜像仓库 在安装 Docker 的时候,默认使用的是 DockerHub,后来为了提升速度,配置的镜像仓库是使用阿里云的镜像仓库,拉取的是别人制作的镜像&…

第五十三回 入云龙斗法破高廉 黑旋风下井救柴进-AI训练数据处理和读取

罗真人教了公孙胜五雷天罡正法,并让他记住“逢幽而止,遇汴而环”八个字。三人辞别了罗真人,戴宗先回去报信,李逵和公孙胜结伴而行。 走了三天,来到了武冈镇,李逵碰到一个铁匠,叫金钱豹子汤隆&a…

[Flutter get_cli] 配置 sub_folder:false报错

flutter get_cli 配置 get_cli:sub_folder:false报错如下 Because getx_cli_learn01 depends on get_cli from unknown source "sub_folder", version solving failed. 原因是在 pubspec.yaml文件中, get_cli:sub_folder:false要和 dependencies: xxx dev_depe…

【node版本问题】运行项目报错 PostCSS received undefined instead of CSS string

最近该项目没有做任何修改,今天运行突然跑不起来报错了 PostCSS received undefined instead of CSS string 【原因】突然想起来期间有换过 node 版本为 16.17.1 【解决】将 node 版本换回之前的 14.18.0 就可以了

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

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

正则表达式 || 遇到字符串里面有() 就在括号后面换行

<template><div class"vertical-layout"><header><h1>testPage</h1><p>(1)第一行内容xxxxxxxxx&#xff08;2&#xff09;第二行内容xxxxxxx(3)第三行内容</p></header><main><el-button click"goToO…

IPsec

在FW5和FW3之间建立一条IPSEC通道,保证10.0.2.0/24网段可以正常访问到192.168.1.0/24 最后测试&#xff1a;

xpath和lxml类库

数据提取之xpath 学习目标 了解 html和xml的区别掌握 xpath获取节点属性的方法掌握 xpath获取文本的方法掌握 xpath查找特定节点的方法 1. 为什么要学习xpath和lxml lxml是一款高性能的 Python HTML/XML 解析器&#xff0c;我们可以利用XPath&#xff0c;来快速的定位特定元…

linux centos系统搭建samba文件服务器 NetBIOS解析 (超详细)

CSDN 成就一亿技术人&#xff01; 作者主页&#xff1a;点击&#xff01; Linux专栏&#xff1a;点击&#xff01; CSDN 成就一亿技术人&#xff01; 前言———— Samba 是一个开源软件套件&#xff0c;可为 SMB/CIFS 客户端&#xff08;包括 Windows&#xff09;提供文件…

为什么选择Copilot for Microsoft365而不是Copilot Pro

最近很多小伙伴都用上了copilot&#xff0c;开始感受copilot在生产力工具中发挥的作用与带来的提升。 询问比较多的就是商业企业版的Copilot for Microsoft 365和个人家庭版的Copilot Pro有什么区别&#xff1f; 这篇文章一定会让你在两者之间选择最合适你的那个。 一、价格…

网络安全学习路线,入门到入坟,史上最全网络安全学习路线整理

很多小伙伴在网上搜索网络安全时&#xff0c;会出来网络安全工程师这样一个职位&#xff0c;它的范围很广&#xff0c;只要是与网络安全挂钩的技术人员都算网络安全工程师&#xff0c;一些小伙伴就有疑问了&#xff0c;网络安全现在真的很火吗&#xff1f; 那么寒哥就带大家看…

LCR 164. 破解闯关密码

解题思路&#xff1a; 贪心 class Solution {public String crackPassword(int[] password) {String[] strs new String[password.length];for(int i 0; i < password.length; i)strs[i] String.valueOf(password[i]);Arrays.sort(strs, (x, y) -> (x y).compareTo(…

c++ 哨兵线性搜索

顾名思义&#xff0c;哨兵线性搜索是线性搜索的一种&#xff0c;与传统线性搜索相比&#xff0c;比较次数减少了。在传统的线性搜索中&#xff0c;仅进行N次比较&#xff0c;而在哨兵线性搜索中&#xff0c;哨兵值用于避免任何越界比较&#xff0c;但没有专门针对正在搜索的元素…

第十篇 - 如何利用人工智能技术做好营销流量整形管理?(Traffic Shaping)- 我为什么要翻译介绍美国人工智能科技巨头IAB公司

IAB平台&#xff0c;使命和功能 IAB成立于1996年&#xff0c;总部位于纽约市​​​​​​​。 作为美国的人工智能科技巨头社会媒体和营销专业平台公司&#xff0c;互动广告局&#xff08;IAB- the Interactive Advertising Bureau&#xff09;自1996年成立以来&#xff0c;先…