详解GitHub

news2024/9/21 12:45:49

详解GitHub

  • 什么是GitHub?
  • GitHub能干什么?
    • 1.托管代码、历史版本管理
    • 2.搜索开源项目
    • 3.分享的同时会得到社区的回馈
    • 4.使用Github Pages服务,你可以免费搭建一个博客网站
    • 5.学习,能力提升
    • 6.提升自己的影响力
  • GitHub和Git的关系与区别
  • 敲开 GitHub 的大门 · 注册账号
    • 进入 GitHub 的官网:https://www.github.com
    • 点击 Sign up
  • 一分钟认识 GitHub
    • 访问 GitHub 官网
    • 探索发现
      • Explore - 探索
      • Topic - 话题
      • Trending - 趋势
      • Collection - 合集
    • 基本使用方法
      • star - 星标
      • Readme - 自述文件
      • Clone - 克隆(源码下载)
    • 如何使用开源项目
  • 创建存储库
  • 创建分支
    • 进行更改和提交更改
    • 打开拉取请求

什么是GitHub?

GitHub 是一个用于版本控制和协作的代码托管平台。它允许您和其他人从任何地方共同处理项目。
在本快速入门指南中,你将:
创建和使用存储库
启动和管理新分支
对文件进行更改并将其作为提交推送到 GitHub
打开并合并拉取请求

GitHub是一个代码托管云服务网站,帮助开发者存储和管理其项目源代码,且能够追踪、记录并控制用户对其代码的修改。 甚至你可以简单粗暴的把它当作一个网盘,用来存储任何东西。

GitHub能干什么?

1.托管代码、历史版本管理

当然不仅仅是代码,任何文件都支持(不少人用GitHub来写博客)。它会自动帮你记录代码的修改,在必要的时候,能够帮助你快速回退到之前的历史版本。

2.搜索开源项目

GitHub是世界顶级开发者的聚集地,在这里你几乎可以找到任何你想要的东西。上面分享有许多优秀、著名的开源项目,在遵守其License的前提下,你可以免费使用、下载这些开源项目。这也是GitHub最为吸引人的地方。

3.分享的同时会得到社区的回馈

GitHub可以说是共产主义的最佳实践之一。其一大优势是协同开发,你分享出来的项目,其他开发者也可以参与贡献,帮助你一同完善项目功能,Bug修复,代码质量提升。

4.使用Github Pages服务,你可以免费搭建一个博客网站

GitHub Pages提供静态网页托管服务,它直接从 GitHub 上的仓库获取 HTML、CSS 和 JavaScript文件,然后构建并发布网站。 您可以在 GitHub Pages 示例集合中查看 GitHub Pages 站点的示例。
GitHub 提供免费的 github.io子域,也支持自定义域名。

5.学习,能力提升

GitHub上有很多优秀开源项目和教程资源值得你去发现、学习

6.提升自己的影响力

你可以将自己的开源项目发布到GitHub网站上,项目越受欢迎获得的Star越高,说明业界对你的能力越认可。一份优秀的GitHub主页,能为自己的简历润色不少。

GitHub和Git的关系与区别

简单来说,Git只是一个命令行工具,一个分布式版本控制系统。正是它在背后管理和跟踪你的代码历史版本,好比一个时光机,让你在代码出错时不至于手忙脚乱,能快速回退之前的历史版本。 类似的工具还有SVN
而GitHub是一个代码托管网站,背后使用Git作为版本管理工具(而非svn)。主要服务是将你的项目代码托管到云服务器上,而非存储在自己本地硬盘上。
类似的网站还有gitlab.com,bitbucket.com,coding.com(国内),gitee.com(国内)

敲开 GitHub 的大门 · 注册账号

在 GitHub 里面有众多的业界大神、有丰富的学习资料、有著名的开源项目代码,我们也可以在 GitHub 中增长自己的技术能力、渲染自己的简历,甚至搭建自己的个人博客或者网站。

此外,最重要的,也是 GitHub 的核心亮点,那就是:我们可以在 GitHub 上同世界各地的伙伴协同开发项目,而且简单、容易的让人难以置信。那么,你准备好了吗?现在,就让我们一起敲开 GitHub 的大门,进入 GitHub 的世界吧!

进入 GitHub 的官网:https://www.github.com

在这里插入图片描述标注 1:Sign in,登录;

标注 2:Sign up,注册。

点击 Sign up

如上图所示,这是 GitHub 的官网首页,点击 Sign up 进行注册:
在这里插入图片描述

标注 1:Username,用户名;

标注 2:Email Address,邮箱地址;

标注 3:Password,密码;

标注 4:Create an account,创建账号按钮。

如上图所示,其中 标注 1 比较重要,最好起对我们具有标识性的用户名,而且如果以后我们要在 GitHub 上搭建自己的个人博客,其默认地址就是username.github.io;标注 2 是需要我们验证 GitHub 账号的邮箱,注册时只能填写一个,之后可以添加多个邮箱。上面的信息都填写完成后,点击 Create an account ,进入如下界面:

在这里插入图片描述
标注 1:公开的,免费仓库;

标注 2:私有的,付费仓库。

如上图所示,我们进入了注册 GitHub 账号流程的第 2 步,在这里有一点需要我们注意,那就是:GitHub 的仓库分为两种,一种是public repositories公开免费版,一种是private repositories私有付费版。其中,私有仓库一般是由企业或者不希望自己的仓库公开的个人用户购买,这也是 GitHub 的主要收入来源。在这里,我们选择免费版就可以,然后点击Continue,进入如下界面:

在这里插入图片描述
如上图所在,这是注册 GitHub 账号流程的第 3 步,也是最后一步。这个步骤的主要作用就是收集用户的个人信息,如果感兴趣的话,可以对上面的“ 问答表 ”进行勾选,然后点击Submit提交;如果不感兴趣的话,则可以直接点击skip this step跳过这一步。无论点击两者之中的那个按钮,都将进入如下界面:
在这里插入图片描述标注1:Read the guide,阅读指南;

标注2:Start a project,建立项目。

如上图所示,到这里,说明我们已经成功注册了 GitHub 的账号。在这个界面,GitHub 为我们提供了两个建议性的选择,一是Read the guide阅读 GitHub 指南,二是Start a project直接建立项目。

一分钟认识 GitHub

访问 GitHub 官网

首先我们访问 GitHub 的官网首页 - https://github.com/
在这里插入图片描述
GitHub 功能很强大,但对于初学者来说我们只需要关注截图中的 “红圈部分” 就足够了, 下面我们将介绍如何在 GitHub 上快速检索我们需要的开源项目,以及如何使用这些开源项目。

探索发现

如何快速发现 GitHub 上有价值的开源项目?
一、通过 GitHub 关键字进行搜索。
二、使用 GitHub 的 Explore - 探索发现页面。
在这里插入图片描述

Explore - 探索

基于你的兴趣和浏览记录推荐你喜欢的开源项目

Topic - 话题

标签的意思,可按标签快速检索开源项目

Trending - 趋势

展示当前GitHub上最热门的开源项目

Collection - 合集

由社区人员精心挑选并按功能分类归档

基本使用方法

OK,现在我们随便进入一个开源项目,例如 upscayl 这个开源项目。

upscayl - 是一个能将模糊图片清晰化的AI工具,使用JavaScript + Python开发。
在这里插入图片描述在这里插入图片描述

star - 星标

在 GitHub 中的“星标”类似于“收藏”功能,星标越高说明该项目的关注度越高。

Readme - 自述文件

Readme 又称“自述文件”,是项目中的一种特殊文件(非强制要求),访问项目主页会默认展示该文件内容。主要用于说明该项目的用途、使用教程以及版权声明。
通常自述文件使用Markdown语法格式编写(文件后缀名md),也可是txt,rtf、doc等格式。

Clone - 克隆(源码下载)

将 GitHub 中的项目下载到本地电脑有2种方式:
1.通过git命令下载。需要提前安装 git 工具并学习相关命令用法。
2.如果你没有安装git工具,也可以选择直接下载zip压缩包。

如何使用开源项目

“开源项目怎么用”、“项目下载后如何运行” 这是很多初学者,特别是没有编程经验的小白经常会问的问题。 对于此类问题,我们建议:

一、前面我们已经提到了 Readme 中通常会包含该项目的介绍及安装使用教程,请仔细阅读这些内容。
二、一般我们下载下来的只是项目源码,要实现运行我们还需要安装相关依赖坏境和编译源码。 但作者通常会将编译好的可执行文件发布在 Releases页面供用户下载。
三、一个成熟的开源项目通常会有自己的社区网站和丰富的教程文档,请善于学习相关文档并利用搜索引擎解决问题。
四、如果项目的说明文档不完善,那你需要具备相关编程经验,自行阅读源码以了解其工作机制。有疑问可以在 Issues页面向作者提问。

创建存储库

存储库通常用于组织单个项目。存储库可以包含文件夹和文件、图像、视频、电子表格和数据集 - 您的项目需要的任何内容。通常,存储库包括一个自述文件,一个包含有关项目信息的文件。自述文件以纯文本Markdown语言编写。您可以使用此备忘单开始使用 Markdown 语法。GitHub 允许您在创建新存储库的同时添加自述文件。GitHub 还提供其他常见选项,例如许可证文件,但您现在不必选择其中任何一个。

您的仓库可以是您存储想法、资源甚至与他人共享和讨论内容的地方。hello-world

1.在任何页面的右上角,使用下拉菜单,然后选择新建存储库。
在这里插入图片描述2.在“存储库名称”框中,输入:hello-world

3.在“说明”框中,输入简短说明。

4.选择您的仓库是“公共”还是“私有”。
公共:全网站的人都可以访问你的仓库
私有:只有自己或者团队能访问

5.选择添加自述文件。

6.单击创建存储库。

创建分支

分支允许您同时拥有存储库的不同版本。

默认情况下,您的存储库有一个名为的分支,该分支被视为最终分支。您可以在存储库中创建其他分支。可以使用分支一次拥有项目的不同版本。当您想要在不更改主代码源的情况下向项目添加新功能时,这非常有用。在合并主分支之前,在不同分支上完成的工作不会显示在主分支上,我们将在本指南的后面介绍。您可以使用分支进行试验和编辑,然后再将其提交到 。mainmainmain

当您从分支创建分支时,您正在创建当时的副本或快照。如果其他人在您处理分支时对分支进行了更改,则可以提取这些更新。

下图显示:

分行main
一个名为feature
合并到之前所经历的旅程feature-main
在这里插入图片描述1.单击存储库的代码选项卡 hello-world

2.在文件列表上方,单击显示 main 的下拉菜单。
在这里插入图片描述
3.在文本框中键入分支名称 。readme-edits

4.单击创建分支:从主目录编辑自述文件。
在这里插入图片描述
5.现在您有两个分支,并且.现在,它们看起来一模一样。接下来,您将向新分支添加更改。mainreadme-edits

进行更改和提交更改

在上一步中创建新分支时,GitHub 会将您带到新分支的代码页,该代码页是 的副本。readme-edits main

您可以对存储库中的文件进行更改并保存更改。在 GitHub 上,保存的更改称为提交。每个提交都有一个关联的提交消息,该消息是解释为什么进行特定更改的描述。提交消息捕获更改的历史记录,以便其他贡献者可以了解您所做的工作和原因。

1.在您创建的分支下,单击 README.md 文件。readme-edits

2.要编辑文件,请单击 。

3.在编辑器中,写一些关于你自己的信息。尝试使用不同的 Markdown 元素。

4.单击提交更改…。

5.在“提出更改”框中,编写一条描述更改的提交消息。

6.单击建议更改。

这些更改将仅对分支上的自述文件进行,因此现在此分支包含与 不同的内容。readme-edits main

打开拉取请求

现在,您在的分支中发生了更改,您可以打开拉取请求。main

拉取请求是 GitHub 上协作的核心。当您打开拉取请求时,您正在提出您的更改,并请求某人审阅和拉取您的贡献并将其合并到他们的分支中。拉取请求显示来自两个分支的内容的差异或差异。更改、添加和减少以不同的颜色显示。

提交后,即使在代码完成之前,也可以打开拉取请求并开始讨论。

通过在拉取请求消息中使用 GitHub 的功能,您可以向特定人员或团队征求反馈,无论他们是在大厅里还是 10 个时区之外。

您甚至可以在自己的存储库中打开拉取请求并自行合并它们。这是在处理大型项目之前学习 GitHub 流程的好方法。

1.单击存储库的拉取请求选项卡。hello-world

2.单击“新建拉取请求”

3.在“示例比较”框中,选择要与(原始)进行比较的分支。readme-editsmain

4.在“比较”页面上查看差异中的更改,确保它们是您要提交的内容。
在这里插入图片描述5.单击创建拉取请求。

6.为您的拉取请求指定标题,并简要说明您的更改。您可以包含表情符号以及拖放图像和 GIF。

(可选)在标题和说明的右侧,单击审阅者旁边的审阅者。被分派人、标签、项目或里程碑,以将这些选项中的任何一个添加到拉取请求中。您还不需要添加任何内容,但这些选项提供了使用拉取请求进行协作的不同方式。
单击创建拉取请求。

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

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

相关文章

MySQL基础(三十八)数据库备份与恢复

1 物理备份与逻辑备份 物理备份:备份数据文件,转储数据库物理文件到某一目录。物理备份恢复速度比较快,但占用空间比较大,MySQL中可以用 xtrabackup 工具来进行物理备份。 逻辑备份:对数据库对象利用工具进行导出工作…

Android如何自定义输入文本对话框?

文章目录 0.引言1.创建示例工程2.输入文本对话框布局和功能设计3.主程序调用输入文本对话框 0.引言 笔者研究的课题涉及到安卓软件开发,在开发过程中,发现普通的显示消息对话框一般可以调用android自带包实现,而要通过文本框输入交互&#xf…

代码随想录算法训练营第十一天|20. 有效的括号、1047. 删除字符串中的所有相邻重复项、150. 逆波兰表达式求值

今天的题目都是对栈的经典应用。 有效的括号 题目链接:力扣 解题思路:基于栈结构的特殊性,其非常适合做对称匹配类问题,其实如果知道了要用栈解这道题,在脑中模拟一遍,接下来的思路就是自然而然能够想到…

STM32 多路ADC同时扫描采样

背景 在项目实际应用中,刚好有需求需要使用多路ADC同时采样,这里就选择STM32 ADC多路ADC同时采样,这里简单说明下配置过程,以及使用步骤 原理图 如下图所示,使用四路ADC输入 ADC_Voltage -> 电压信号的采样&…

如何查看linux分区挂载在哪个目录?

一,简介 在linux系统中,如何查看磁盘分区是挂载在哪个目录呢?今天介绍一种方法,供参考。 二,图形化界面查看分区挂载方法 2.1 打开disk工具 2.2 点击查看对应的分区 看一个分区: 如上图所示&#xff0…

百度地图网页设计

一、百度地图api 1、百度搜索——百度地图API 进入——开放平台——开发文档——JavaScript API JavaScript API 首先是GL版本,是三维的效果,我们一般使用二维,选择下面v3.0版本 2、开发指南——注册账号 跟着提示来申请密钥就可。 二、…

Linux基本指令【下】

目录 一、时间相关指令 date显示 时间戳 二、cal指令 三、find指令 (重要)-name 四、grep指令 五、zip\unzip指令 六、tar指令:打包/解压,不打开它,直接看内容 七、bc指令 八、uname -r指令 九、几个重要…

ConstrainLayout(约束布局)属性详解

layout_constraintLeft_toLeftOf layout_constraintRight_toRightOf 这两个基本上用不上因为 layout_constraintStart_toStartOf就相当于layout_constraintLeft_toLeftOf layout_constraintEnd_toEndOf就相当于layout_constraintRight_toRightOf app:layout_constraintBottom_t…

【VMware】Ubantu 22.04配置静态IP

文章目录 一、VMware 虚拟网络配置VMnet8 网络设置注意 关于取消勾选使用本地DHCP服务将IP地址分配给虚拟机VMnet8 NAT设置 网关IP 二、虚拟机 网络适配器三、启动虚拟机 配置网络查看网卡名设置静态IP Reference 一、VMware 虚拟网络配置 VMnet8 网络设置 子网IP子网掩码 编…

22 外部排序

外部排序 外部排序的基本内容 前面介绍过的排序方法都是在内存中进行的(称为内部排序)。外部排序是一种无法全部装入内存的大规模数据集的排序算法。与在内存中处理数据的内部排序相比,外部排序要复杂的多,主要因为是其需要解决…

【c语言】二进制文件的读写操作

创作不易&#xff0c;本篇文章如果帮助到了你&#xff0c;还请点赞 关注支持一下♡>&#x16966;<)!! 主页专栏有更多知识&#xff0c;如有疑问欢迎大家指正讨论&#xff0c;共同进步&#xff01; &#x1f525;c语言系列专栏&#xff1a;c语言之路重点知识整合 &#x…

1.1 IAR新建工作空间 及 新建工程

目录 新建工作空间 新建工程 新建工作空间 &#xff08;1&#xff09;创建一个名字为Workspace的文件夹&#xff0c;如图所示。 &#xff08;2&#xff09;运行IAR EW for 8051 10.10.1&#xff0c;如图所示。 &#xff08;3&#xff09;依次选择File和New Workspace&#xf…

【IDEA使用指南】如何将 IDEA 开发工具作为可视化工具来操作数据库?

如何将 IDEA 开发工具作为可视化工具来操作数据库&#xff1f; 步骤1&#xff1a;找到数据源配置的工具栏。 如下图所示&#xff0c;找到 “View -> Tool Windows -> Database”&#xff0c;点击“Database”。 步骤2&#xff1a;选择数据源类型。 在开发工具右侧会…

CSS背景色渐变

从上到下渐变&#xff1a;background: linear-gradient(red, pink); 从左到右渐变&#xff1a;background: linear-gradient(to right, red , pink); 对角&#xff08;从左上角到右下角&#xff09;渐变&#xff1a;background: linear-gradient(to bottom right, red , pink);…

【Linux】进程信号详解(三)

文章目录 一、可重入函数二、volatile三、SIGCHLD信号 一、可重入函数 假设有一个不带头的单链表&#xff0c;要进行头插操作&#xff0c;在我们数据结构阶段都已经学习过&#xff0c;我们可以有以下的步骤&#xff1a; 要将node1头插到单链表中&#xff0c;调用insert函数&…

什么是数据仓库

数据仓库的概念可以追溯到20世纪80年代&#xff0c;当时IBM的研究人员开发出了“商业数据仓库”。本质上&#xff0c;数据仓库试图提供一种从操作型系统到决策支持环境的数据流架构模型。数据仓库概念的提出&#xff0c;是为了解决与这个数据流相关的各种问题&#xff0c;主要是…

flutter 在动图上添加文字

前言 有这样一个场景&#xff0c;在一个展示很多文字的App中背景图片可以自定义&#xff0c;当然也可以是动态的&#xff0c;但是这个主页是可以分享出去的&#xff0c;也就是我需要在一个动态的背景上写上文字并保存为一张新的图片并分享出去。 实现 前置准备 需要导入一个…

【计算机视觉 | 目标检测】Objects365 :最新大规模高质量目标检测数据集

文章目录 一、前言二、数据集的规模三、数据集的质量四、泛化能力五、结语 一、前言 2019 年 4 月&#xff0c;在北京举行的智源学者计划启动暨联合实验室发布会上&#xff0c;北京旷视科技有限公司与北京智源人工智能研究院共同发布了全球最大的目标检测数据集 &#xff1a; …

ChatGPT国内免费访问

背景 ChatGPT作为一种基于人工智能技术的自然语言处理工具&#xff0c;近期的热度直接沸腾&#x1f30b;。 作为一个程序员&#xff0c;我也忍不住做了一个基于ChatGPT的网站&#xff0c;免费&#xff01;免梯子&#xff01;&#xff01;国内可直接对话ChatGPT&#xff0c;也…

使用Python和Scrapy实现抓取网站数据

Scrapy是一个功能强大的网络爬虫框架&#xff0c;允许开发者轻松地抓取和解析网站内容&#xff0c;这篇文章主要为大家介绍了如何使用Python的Scrapy库进行网站数据抓取&#xff0c;需要的可以参考一下 在本文中&#xff0c;我们将介绍如何使用Python的Scrapy库进行网站数据抓…