GitHub使用教程详解——官网操作指南(翻译)

GitHub使用指南

原文地址:GitHub官网
示例项目:Hello World
十分钟轻松教学
在学习计算机语言编程的过程中创建Hello World 项目是一个历史悠久的传统。当你接触一门新事物的时候可以用它来做一个简单的练习。让我们开始使用github吧!
通过本文,您将会学到:

  1. 如何创建和使用仓库
  2. 如何创建和管理分支
  3. 如何改变一个文件并将它提交到github上
  4. 如何发起以及合并请求

什么是GitHub

GitHub是一个代码版本控制和协作的托管平台。它可以让你和你的伙伴在任何地方一起进行项目开发。
本教程将帮助你学习GitHub的必备知识,如“仓库”、“分支”、“提交代码”以及“请求代码合并”。你将创建你自己的“hello-world”仓库并且学习GitHub的请求代码合并工作流,这是目前一种非常流行的创建和审查代码方式。

无需编码

要完成本教程,您需要注册一个GitHub账户并且需要联网。你不需要知道如何编码,如何使用命令窗口以及如何安装Git(GitHub的客户端软件)。
提示:你可以将本指南在一个单独的浏览器或浏览器tab窗口中打开,这样你就可以边看着指南边进行操作了。

第一步:创建一个仓库

一个仓库通常用来组织一个单独的项目。该仓库可以包含你项目中的所有文件,如文件夹、文件、图片、视频、电子表格、数据集等。我们建议包含一个README文件,或者你自定义的用来记录项目信息的文件。GitHub将默认在你创建仓库的时候添加它。在创建的同时还提供了权限许可选项。
你可以用你的“hello-world”仓库来存储你的想法、资源,甚至用它来和别人分享、讨论任何事情。

第一步:创建一个新的仓库

  1. 在页面的最右上角,你的头像的左边,点击“+”,在弹出的下拉选项中选择“New repository”。
  2. 在仓库名称输入框中输入你的仓库名称:“hello-world”。
  3. 写一个简短的描述。
  4. 勾选“Initialize this repository with a README”。

    点击“Create repository”按钮,完成创建。

第二步:创建一个分支

分支是一个可以让你在同一时间工作在同一个仓库的不同版本的方法。
在你的仓库中会有一个默认的名叫“master”的主分支,该分支用来存储你最终确定的版本代码。我们用其他的子分支来进行编辑和更改,确定之后再提交到主分支。
当你从主分支创建出一个子分支的那一刻,其实你就是对当时时间点的主分支做了一个拷贝。如果之后别的分支的人对主分支做出了更新,在你提交到主分支之前,你必须先从主分支上拉取那些更新。
下面的图表将显示分支合作的整个流程:
主分支
一个新的命名为“feature”的子分支(因为我们正在这个分支上做开发)
“feature”分支合并到主分支之前的历程

你是否像下面这样保存过不同版本的文件?
story.txt
story-joe-edit.txt
story-joe-edit-reviewed.txt
在GItHub仓库中的分支就是为了完成类似的功能。
在GitHub上,我们的开发人员,编辑人员以及设计人员,分别在独立的分支上完成自己修改bug或功能编写的工作。当一个功能编写确定之后,他们就将自己的分支合并到主分支上。

新建一个子分支

  1. 进入你的“hello-world”仓库
  2. 点击文件列表上方的写着“branch: master”的下拉框
  3. 在输入框中输入新的分支名字“readme-edits”
  4. 点击下方蓝色背景的分支创建框或直接按键盘的“Enter”键

    现在,你已经有了“master”和“readme-edits”两个分支了。他们看起来几乎一模一样,但是不要着急,接下来,我们将在我们新建的子分支上做出一些改变。

第三步:做出修改并提交

干得好!现在,你已经在你的新分支“readme-edits”上了,让我们来对它写点什么。
在GitHub中,保存更改被称为“提交”。每一次提交都需要写一段我们为什么做出修改的备注说明。这些备注说明将对你的更改做出记录,其他伙伴看到之后就知道你每次都提交了什么。

做出修改并提交

  1. 点击“README.md”文件,切换到“README.md”内容页面
  2. 点击编辑框右上角的铅笔按钮,进入编辑界面
  3. 在编辑框中,写一些你自己的信息
  4. 在下方的“提交更改”框中,输入你做出此次修改的备注说明
  5. 点击下方的“Commit changes”按钮

    这些更改只是针对于位于你的“readme-edits”子分支中的 “README.md ”文件,所以现在这个分支上包含的内容和主分支上已经有所不同。

第四步:发出“请求代码合并”请求

现在你已经对你的新分支做出了修改,我们可以发出“请求代码合并”的请求啦。
请求代码合并是GitHub团队协作的核心功能。当你发出一个“请求代码合并”请求的时候,相当于你请求别人拷贝你当前的代码做出审查,审查通过之后将你的代码下载并且合并到他们的分支上。该请求将会在所有的分支上显示出不相同的部分。你做出的任何更改、增加以及减少,都会用绿色和红色显示出来。
在你的代码完成之前,你可以随时进行代码提交,发起请求代码合并的请求以及进行一场讨论。
你可以通过GitHub的“@”功能,在每次发出“请求代码合并”请求的时候,向特定的人或团队做出反馈,无论这个人是在你身边还是远在千里之外。
你可以向自己的仓库发出“请求代码合并”的请求,并且自己去合并他们。这在你接触到大型项目之前是一个非常好的练习方法。

为更改的README文件发出“请求代码合并”请求

第一步:点击“Pull Request”选项卡按钮,切换到请求代码合并页面,点击绿色的“New pull request”按钮

第二步:选择你创建的“readme-edits”分支,与主分支进行比较。

第三步:在对比页面查看这些更改,确定他们就是你想要提交的。

第四步:当你确定这些更改就是你所要的时候,点击绿色的“Create Pull Request”按钮。

第五步:为你的更改做一个简单的标题和描述。

当你写完备注描述之后,点击“Create pull request”按钮。
提示:你可以使用emoji表情或者拖拽图片到评论窗口进行评论。

第五步:合并你的“请求代码合并”请求

这是整个过程的最后一步,是时候将你在子分支“readme-edits”做出的更改合并到主分支“master”上了。

  1. 点击绿色的“Merge pull request”按钮,将这些修改合并到主分支
  2. 点击“Confirm merge”按钮
  3. 由于这个分支的更改已经被合并了,所以我们还需要点击紫色框中的“Delete branch”按钮,删除这个分支

    大功告成,你已经学会如何在github官网上管理自己的项目了。

GitHub使用教程详解——官网操作指南(翻译)相关推荐

  1. Gem5模拟器,详解官网教程Event-driven programming(五)

    目录 一.解释一下gem5中的event-driven? 二.Creating a simple event callback (1)定义一个新的 C++ 类,并继承自 SimObject 抽象基类 ...

  2. GitHub使用教程详解(下)——Git的安装以及Git命令详解

    上一篇GitHub使用教程详解(上)--官网操作指南[翻译],是针对官网的guide进行了翻译,其实个人来说,我是很不喜欢那么操作的,又要等待页面加载,操作又慢!程序员嘛,还是直接敲入命令代码更迅速高 ...

  3. Gem5模拟器,详解官网教程Debugging gem5(四)

    目录 一.Gem5中的多种debug模式 二.gem5中的调试标志 三.介绍一下DPRINTF是啥? 四.如何添加一个新的debug flag 五.关于Debuug output gem5是一种用于模 ...

  4. Gem5模拟器,详解官网教程的statistics and output(三)

    gem5是一个计算机模拟器,它可以用来模拟不同类型的计算机系统,以帮助计算机科学家和工程师更好地理解和优化计算机系统的性能.gem5提供了许多统计信息和输出功能,可以帮助用户更好地了解模拟的计算机系统 ...

  5. github使用教程详解

    1 Linux下Git和GitHub环境的搭建 第一步: 安装Git,使用命令sudo apt-get install git; 第二步: 创建GitHub帐号; 第三步: 生成ssh key,使用命 ...

  6. Github 使用教程详解

    一.什么是Github,什么是Git,Github和Git什么关系 GitHub是一个面向开源及私有软件项目的托管平台,而Git是一个开源的分布式版本控制系统: 关系:Github是项目代码托管的平台 ...

  7. 海岛奇兵服务器修改,海岛奇兵NPC刷新详解 官网阐述未来更改变动

    海岛奇兵NPC刷新机制到底是怎么样的呢?如何加快NPC的刷新速度呢?赶紧一起来看看海岛奇兵官方的讲解吧! 一.当前版本规则说明 1.敌方入侵数量上限,包括PVP玩家基地以及NPC基地. 2.敌方入侵数 ...

  8. c fread 快读 详解_梨的简笔画画法教程详解【彩色】__水果_水果简笔画图片_学画画网...

    2020-10-20 11:43:58 来源:简笔画教程 作者: 小西 导读: 美味的梨的简笔画怎么画?梨的简单的画法教程,手把手的教你画梨的简笔画,喜欢就跟着教程一起来学吧. 梨的简笔画画法教程详解 ...

  9. php远程连接真机实现,搭建nextcloud私有云存储网盘的教程详解

    Nextcloud是一款开源免费的私有云存储网盘项目,可以让你快速便捷地搭建一套属于自己或团队的云同步网盘,从而实现跨平台跨设备文件同步.共享.版本控制.团队协作等功能.它的客户端覆盖了Windows ...

最新文章

  1. 索引和长度必须引用该字符串内的位置--ArgumentOutOfRangeException
  2. HDU 2189 悼念512汶川大地震遇难同胞——来生一起走
  3. exfat文件系统_u盘文件系统exfat格式优缺点有哪些【详细介绍】
  4. Android之解决webview加载第三方网页点击弹不出下拉框(html页面里面的select标签)
  5. MPEG(mpeg1,mpeg2,mpeg4) 与H264 QP值间 关系
  6. java tostring方法_Java虚拟机如执行方法调用的(二)?
  7. 【数据库系统】编程语言类型说明系统和DDL的区别
  8. 使用java程序读取配置文件中的相关属性值-asp.net关注
  9. 7-1 宿舍谁最高? (20 分)
  10. 专升本/四六级/考研英语学习资源汇总
  11. TOOLTIPS 的相关用法
  12. 【9】数据可视化:基于 Echarts + Python 实现的动态实时大屏 - 酒店行业
  13. Web前端鼠标变小手CSS和JS(Vue)两种实现
  14. 门禁服务器业务导航不显示,门禁一卡通管理软件重大问题解决办法
  15. 一般人我都不告诉他们
  16. solidworks 资料分享
  17. 51单片机(八).单片机的I2C与串口通讯
  18. 解题记录 P4017 最大食物链计数 拓扑排序
  19. LabVIEW将现有数据文件映射至TDMS数据文件格式
  20. 考试安全平台_ER图_功能图_数据字典_数据库脚本

热门文章

  1. android groovy 注解,Groovy 注释
  2. php 下划线转大写开头,使用PHP把下划线分隔命名的字符串 转换成驼峰式命名方式 , 把下划线后面的第一个字母变成大写...
  3. 3D视觉创新应用(三维重建)竞赛作品系列——人体三维精准量测与动作捕捉
  4. 【问题收录】Ubuntu14.04连接两个双显示器失败的解决方案
  5. WPF加载相对路径的图片的解决方法
  6. 计算机组装安全常识,计算机组装与维护宝典
  7. cytoscape插件bingo使用
  8. 在springcacheinvokecontext中没找到field_家庭中没入住多久玻璃胶就发黑发霉,终于找到它的原因了,很简单...
  9. linnux 流量控制模块tc_智能功率模块助力业界加速迈向基于碳化硅(SiC)的电动汽车...
  10. 拒绝conda, 用virtualenv构建多版本的python开发环境