Hello World程序是计算机编程中由来已久的惯例,这是一个当你在学习新事物的时候开始的一个简单的小练习。让我们开始GitHub的"Hello World".

你将学会:

- 创建和使用一个版本库

- 开始和管理一个新的代码分支

- 对一个文件作出变化,并且将它们提交到GitHub上

- 打开及合并一个合并请求(pull request)

什么是GitHub?

GitHub 是一个进行版本控制和协作的代码托管平台。它可以让你与世界各地的开发者一起开发同一个项目。

这份指导将会教你GitHub的基本概念:版本库、分支、提交、以及合并请求。你将会创造属于你自己的Hello World 版本库并且学会GitHub的合并请求的工作流程,这是一个是受欢迎的创建和评审代码的方式。

没有写代码的必要

要完成这份教程,你需要一个GitHub网站的账号和能够连接连互联网,你不需要会写代码,也不需要会利用命令行及安装Git(GitHub内置的版本控制软件)。

提示:建议在单独的浏览器窗口(separate browser window)(或者标签),这样你可以在完成本教程的步骤时随时翻看本教程。

Step 1. 创建一个版本库

一个版本库是用来组织一个单独的项目。版本库中可以容纳文件夹和文件、图片、视频、电子表格,或是数据集,任何你的项目需要的东西。我们建议版本库中包含一个README,或者是一个介绍你的项目信息的文件。GitHub能够轻易地在你创建一个新的版本库的同时添加上述文件。GitHub也提供了其他常用的设置例如一个许可文件。

你的 hello-world 版本库将是一个你储存想法、资源甚至是与他人讨论想法的绝佳胜地。

新建一个新的版本库

1. 在页面靠近你的头像的右上角,点击符号,选择New repository

2. 将你的标准库命名为 Hello-World

3. 写一个简单的描述

4. 将 Initialize this repository with a README 选项勾上,这样GitHub在生成版本库的同时会生成一个README文件

5. 点击Create repository,这样一个HelloWorld的版本库便创建好了。

Step 2. 创建一个分支

分支系统是一个版本库同时在多个不同的版本上工作的一种方式。你的版本库在创建成功后会默认的创建一个名为master的分支,这个分支被认为是决定性的主线版本。在将内容提交到 master 分支之前,我们将会在其他分支上实验和修改我们的内容。

当你从 master 分支创建另外一个分支时,相当于将该时间段的 master 拷贝或者创建一个快照到你创建的分支上。当你在其他分支上工作时, master 分支被其他人修改了。这时候你可以在你的版本上合并这些更新。

下图展示出:

- 主线版本 master

- 一个叫做 feature 的新的分支(因为我们在这个分支上做着“未来的工作”)

- 在 feature 合并到 master 之前,它经历的过程

你是不是也对一个文件创建过下面的这些版本?

- 文件.txt

- 文件初稿完成版.txt

- 文件初稿完成版修改版.txt

- 文件最终修改版.txt

- 文件最终修改版再次修改版.txt

分支系统能够轻松的在GitHub中完成上述的工作。

在GitHub中,开发者,文案和设计者利用从 master (产品)单独拷贝的分支来进行bug的修改和功能独立的工作。当修改完毕,他们可以将他们自己的分支合并到 master 中。

创建一个新的分支

1. 跳转到你的新版本库hello-world

2. 点击在文件列表顶端显示branch:master的下拉菜单

3. 在新的分支文本框中新分支的名称, readme-edits

4. 选择蓝色的Create按钮或者敲击键盘的回车键。

现在,你就拥有了两个分支:主线分支 master 和 新创立的分支 readme-edits。这两个分支只是暂时看起来是一模一样的。接下来我们将会在新的分支上进行改动

Step 3. 进行和提交修改

接下来,你将要对你的readme-edits分支,master的一个备份,进行代码审查。首先我们先做出一些修改。

在GitHub中,保存更改的操作称为提交。每个提交的操作都会关联着一份提交信息,提交信息是一份解释为何要做出此更改的描述性文字。提交信息会保存你更改的历史,这样其他贡献者能够了解到你的成果以及你为什么要这样做。

制造并提交修改

  1. 点击README.md文件。
  2. 点击文件预览窗口右上方的铅笔的小图标来进行编辑。
  3. 在编辑中,自由发挥写一点内容。
  4. 写一个描述你做出的改变的提交信息。
  5. 点击Commit changes按钮。

刚才在README文件中做出的改变仅仅是在你的readme-edits分支上。所以现在这个分支上包含的内容与master上面的内容是不同的。

Step 4.打开一个合并请求

既然你已经在master之外的分支做出了许多的更改,那么你就可以开放一个合并请求。

合并是在GitHub上进行合作的核心。当你开放一个合并请求,意味着你正在提议你的修改,请求别人的评审并且采纳你的贡献将你修改的内容合并到他们的分支中。合并请求会显示出两个分支之间的差异和不同。修改,增加和减少将会以红绿对比的形式展示。

即使在编写代码的工作完成之前,只要你进行一次提交,你就可以开放一个合并请求并且开始一场讨论。

通过在你的合并请求信息中使用GitHub的提示信息,你可以向特定的人群或者团队请求回信,不论他们就在你楼下还是远在地球的另一边。

你甚至可以在你自己的版本库中开放请求信息然后合并它们,这是在处理大的项目之前一个很好的学习GitHub流程的方式。

对README的修改开放一个合并请求

1. 点击Pull Request标签,然后在合并请求的页面上,点击绿色的New pull request按钮

[

2. 选择你创建的分支readme-edits,拿它与master(源版本)进行比较。

3. 仔细检查比较页面你更改的不同,确保这些改变是你想要提交的

4. 当你对要提交的改变满意时,点击绿色的Create Pull Request的大按钮。

5. 给你的合并请求设置好题目并且对你做出的更改写一个简单的介绍

完成上述步骤之后,点击Create pull request创建合并请求

提示:你可以在合并请求和评论当中使用emoji表情和拖入图片或动图来更好的表达你的想法。

Step 5.提取你的合并请求

在最后的步骤,是将你的改变整合到一起去的时候——合并你的readme-edits分支到master分支上去

1. 点击绿色的Merge pull request按钮来将改变合并到master中。

2. 点击Confirm merge按钮来确认合并请求

3. 在分支被合并之后,可以利用紫色区域的Delete branch按钮来删除它。



祝贺你完成本次教程

在完成教程的过程中,我们学习了创建一个工程并且在GitHub上创建一个请求。

这是你在完成这份教程中所做的事:

- 创建了一个开源的版本库

- 开始并且管理一个新的分支

- 对文件作出改变,并且提交了这些改变在GitHub中

- 打开和合并一个合并请求

查看你的GitHub的侧面板你会看到你的新的贡献广场

想学习更多关于合并请求的功能,我们推荐阅读GitHub流程指南,你也可以访问GitHub浏览加入到开源项目中。

    提示:可以查找我们其他的GuideYouTube Channel以及On-Demand Training来学习更多开启GitHub的方法

GitHub简单教程的更多相关文章

  1. Git和Github简单教程

    原文链接:Git和Github简单教程 网络上关于Git和GitHub的教程不少,但是这些教程有的命令太少不够用,有的命令太多,使得初期学习的时候需要额外花不少时间在一些当前用不到的命令上. 这篇文章 ...

  2. Git和Github简单教程(收藏)

    原文链接:Git和Github简单教程 目录: 零.Git是什么 一.Git的主要功能:版本控制 二.概览 三.Git for Windows软件安装 四.本地Git的使用 五.Github与Git的 ...

  3. Git和Github简单教程【转】

    转自:https://www.cnblogs.com/schaepher/p/5561193.html#clone 原文链接:Git和Github简单教程 网络上关于Git和GitHub的教程不少,但 ...

  4. 转:Git和Github简单教程

    转自:https://www.cnblogs.com/schaepher/p/5561193.html Git和Github简单教程   原文链接:Git和Github简单教程 网络上关于Git和Gi ...

  5. Git和Github简单教程(转)

    这篇文章只挑一部分命令来讲,差不多够用就行的程度.如果需要其他命令,到时候再去其他地方了解就行了先在Github上写好再搬过来的:本文Github链接 目录: 零.Git是什么 一.Git的主要功能: ...

  6. 如何使用github,简单教程

    前期准备:先行设置SSH KEY(请看我之前发的关于设置添加SSH的文章) 直接上命令: clone 已有仓库到身边的开发环境中 git clone git@github.com:<yourna ...

  7. GitHub 简单教程

    码农朋友们都知道,GitHub是一个面向开源及私有软件项目的托管平台,上面托管了众多的优秀的项目,比如Linux内核源码.Git源码.机器学习框架Tensorflow等等.当然,除了这些顶尖项目外,还 ...

  8. git和github使用教程

    看官请移步git和github简单教程, 本文是上述链接的截图,担心哪天作者不小心删除了,备一份在自己这里,仅为自己看着方便.侵权请告知

  9. github简单使用教程

    github是一个基于git的代码托管平台,付费用户可以建私人仓库,我们一般的免费用户只能使用公共仓库,也就是代码要公开.对于一般人来说公共仓库就已经足够了,而且我们也没多少代码来管理,O(∩_∩)O ...

随机推荐

  1. JavaScript 误区

    接触JavaScript两年多遇到过各种错误,其中有一些让人防不胜防,原来对JavaScript的误会如此之深,仅以此文总结一下常见的各种想当然的误区 String replace string的re ...

  2. EF架构~在T4模版中为所有属性加默认值

    回到目录 在项目开发过程中,出现了一个问题,就是新添加一个非空字段后,原来的程序逻辑需要被重新修改,即将原来的字段添加到程序里,这种作法是非常不提倡的,所以,我通过T4模版将原来的实体类小作修改,解决 ...

  3. Kafka与Logstash的数据采集对接 —— 看图说话,从运行机制到部署

    基于Logstash跑通Kafka还是需要注意很多东西,最重要的就是理解Kafka的原理. Logstash工作原理 由于Kafka采用解耦的设计思想,并非原始的发布订阅,生产者负责产生消息,直接推送 ...

  4. Java六大问题你都懂了吗?

    这些问题对于认真学习java的人都要必知的,当然如果你只是初学者就没必要那么严格了,那如果你认为自己已经超越初学者了,却不很懂这些问题,请将你自己重归初学者行列. 一.到底要怎么样初始化! 本问题讨论 ...

  5. 部署到IIS报错:HTTP错误500.19,错误代码0x800700d

    title=部署到IIS报错:HTTP错误500.19,错误代码0x800700d.   用vs直接运行网站没问题,部署到IIS就报错,由此可知应该是IIS中不支持网站相关配置. 查找发现在web.c ...

  6. 贪心算法-最小生成树Kruskal算法和Prim算法

    Kruskal算法: 不断地选择未被选中的边中权重最轻且不会形成环的一条. 简单的理解: 不停地循环,每一次都寻找两个顶点,这两个顶点不在同一个真子集里,且边上的权值最小. 把找到的这两个顶点联合起来 ...

  7. mongodb简介与增删该查

    一.简介 MongoDB 是由C++语言编写的,是一个基于分布式文件存储的开源数据库系统.MongoDB 旨在为WEB应用提供可扩展的高性能数据存储解决方案.MongoDB 将数据存储为一个文档,数据 ...

  8. CSS多列布局

    × 目录 [1]列宽 [2]列数 [3]列间距[4]列rule[5]跨列[6]列填充[7]多列 前面的话 CSS新增了多列布局特性,可以让浏览器确定何时结束一列和开始下一列,无需任何额外的标记.简单来 ...

  9. NYOJ 1023 还是回文(DP,花最少费用形成回文串)

    /* 题意:给出一串字符(全部是小写字母),添加或删除一个字符,都会产生一定的花费. 那么,将字符串变成回文串的最小花费是多少呢? 思路:如果一个字符串增加一个字符 x可以形成一个回文串,那么从这个字 ...

  10. Mina、Netty、Twisted一起学(九):异步IO和回调函数

    用过JavaScript或者jQuery的同学都知道,JavaScript特别是jQuery中存在大量的回调函数,例如Ajax.jQuery的动画等. $.get(url, function() { ...