[个人翻译]GitHub指导文件(GitHub Guides[Hello World])

Mirage_j个人翻译,欢迎转载,最好标明出处http://www.cnblogs.com/mirageJ/

Hello World是电脑编程史上悠久而又传统的工程。学习新事物时我们通常会以这个简单的小程序作为开始。我们就以此为开头了解GitHub吧!

通过这篇指导,你会学到如何

  • 建立并使用repository代码库
  • 开始和管理新的branch代码分支
  • 对文件进行修改并上传到GitHub进行commits确认存档
  • 开始和融合一个pull request拉入请求

什么是GitHub?

GitHub是一个为版本管理和协同工作而生的代码管理平台。在这里,你可以和世界各地与你志同道合的人一起实现或完成各种工程。

这篇指导将引导你学习了解GitHub的各种元素,包括:repository代码库branch代码分支commits确认存档pull request拉入请求。Pull Request是GitHub上一种非常流行的用来构建和检阅代码的方法,让我们从建立你自己的Hello World代码库来开始学习Pull Request的工作流程吧。

不需要敲代码

想要学习怎么使用GitHub,你得先注册一个GitHub账号(当然你还得能上网)。你甚至不需要知道怎么编程、怎么使用命令行、或者安装Git(一个建立GitHub的版本管理软件)。

Tip:你最好用新标签页打开这个页面,这样你就可以一边学习一边动手实践了

第一步:建立一个Repository

单个Repository经常用来管理单个工程。任何你的工程需要的东西——包括一堆文件夹、各种文件、图片、视频、表格和数据库,都可以扔进Repositories里。我们建议你的Repository里能包含一份README说明文档,或者一个写着你工程信息的文件。你可以很方便地在建立新的Repository的时候加入README或者工程信息,以及别的常用选项如证书文件。

建立一个hello-world Repository吧,你可以在里面存放你的想法,各种资源,进行分享以及与他人进行讨论。

建立一个新的Repository

  1. GitHub页面的右上角,你头像或者账号的下方,点+后选择New repository
  2. 给你的Repository取名为hello-world
  3. 随便写点描述
  4. 勾上Initialize this repository with a README.带上说明文件来初始化你的Repository

点击Creat repository,搞定!

第二步:建立一个Branch

Branching代码分支是一种对同一Repository的不同版本同时工作的方法。 Repository默认自带一个叫 master 的Branch,这个Branch是作为你工程的最终版本而存在的(或者正式版本)。我们利用多个Branch对工程进行试验和编辑,直到你把它确认到 master 。

当你在 master branch的下面建立一个新的branch时,你就等于复制了一个master branch,或者说是做了master在这个时间节点的快照。如果在你在自己的branch上工作的时候,有别人对master进行了修改,你可以将那些修改直接加进来。

下面这个图表展现了:

  • master branch
  • 一个叫feature的branch(因为我们通常都在这个branch上面做“feature work(实现功能)”的工作)
  • feature在融合进master之前经过的旅程

你有没有保存过一个文件的不同版本?像这种:

  • 一个故事.txt
  • 一个故事(老李修订版).txt
  • 一个故事(老李修订版-已审核).txt

Branch做的事情和上面的差不多,不过它是在Repository里面做的而已

在GitHub里面,开发者、写手、设计师用branch来为 master 修复bug和增加功能。当一个修改可以确认完成了,我们就把这些branch把融入到 master 里去

建立一个新branch

  1. 进入你的 hello-world Repository
  2. 点击下拉菜单,就在文件列表的上方,写着 branch:maser 那里
  3. 把要新建的branch的名字,如 readme-edits ,输到文本框里
  4. 按蓝色的 Create branch 或者按回车

现在你就有两个branch: master 和readme-edits 了,现在它们还完全一样,但是不会持续很久。接下来我们对新的branch做点修改

第三步:提出并确认修改

很好!现在你看到的是readme-edits的代码管理页,这个完全是复制 master的,让我们来对它进行点改动

在GitHub上,保存修改被称作 commits确认 。每个commit都带着一个确认消息,这条确认消息告诉大家为什么会进行这个修改,或者这个修改的具体描述。确认信息紧随着修改的历史记录,这样别的合作者就会知道你做了些什么以及你为什么这样做。

提出并确认修改

  1. 点击README.md文件
  2. 点击铅笔图标,它在编辑页面的右上角
  3. 在编辑栏里写些什么,可以是关于你自己
  4. 写下确认消息来描述你做的修改
  5. 点击 Commit changes 按钮

这些你做的修改都会在 readme-edits branch上保存,现在 readme-edits 就和 master 不一样了

第四部:开启一个Pull Request

干得好!你已经在 master 下做了修改了,现在你可以开启一个Pull Request

Pull Request是GitHub协同工作的核心。当你开启一个Pull Request,你就是提出你做的修改并告诉别人:来查阅你的修改,然后将你做的贡献拉到他们的branch里去。Pull Request展示了双方branch里的不同。这些修改、增加与删减会以绿色和红色进行区分

当你完成commit的同时,你可以开启一个Pull Request然后开始进行讨论,这甚至可以在代码完成之前就进行

你可以在你的pull request消息里使用GitHub’s @mention system,通过它向特定的人或者团队请求反馈,不管这些人就住在你楼下或者现在处在地球的另一边

你现在就可以在你自己的Repository里开启你的pull request并且自己把它们融合到你的Repository里,这是一种在很好的学习方法,可以帮助你提前了解GitHub里参与大型工程的流程。

为README的修改开启一个Pull Request

  • 点击Pull Request便签页,在打开的页面里点击绿色的New pull request按钮 
  • 选择你刚刚生成的readme-editsbranch来和原始的master进行比较
  • 在这个对比页面里,你可以看到两个branch有什么不同,确保这些改动是你想确认保存的
  • 如果觉得这些改动可以提交了,点击那个巨大的绿色按钮** Create Pull Request**
  • 给你的pull request取个名字吧!你还可以大概地描述一下你做的改动

当你搞定这些东西之后,按Create pull request!

Tip:你还可以把emoji表情和图片拉到说明和Pull Request上

第五步:融合你的Pull Request

终于到最后一步了,是时候把你做的改动都放在一起了——将你的 readme-edits branch融入到 master branch里去

  1. 点击那个绿色的Merge pull request来把你做的改动融合到 master 里去
  2. 点击Confirm merge
  3. 让我们深入一点,学会怎么删除branch。既然这些改动已经被包含到 mater 了,那我们就可以按紫色方框里的Delete branch按钮删除掉之前的 readme-edits 了

恭喜!

你已经完成这篇教程了,也就是说你已经知道怎么在GitHub上面创建一项工程并开启Pull Request了

你在这篇教程里干了这些事情: - 建立了一个开源的Repository代码库 - 建立了一个全新的branch代码分支并且学会怎么管理它 - 对一个文件进行改动,并且在GitHub上确认保存 - 开启Pull Request拉入请求并且将它融合到别的代码里去

你可以看一眼你的GitHub上的个人中心,你会发现你有一个新的贡献广场contribution squares

你可以在这里GitHub Flow Guide继续学习Pull Request。你也可以去访问 GitHub Explore和投身到一项开源项目里去。

Tip:想要更多地了解GitHub?看下http://guides.github.com/http://youtube.com/githubguides 和https://services.github.com/on-demand/吧。

[个人翻译]GitHub指导文件(GitHub Guides[Hello World])的更多相关文章

  1. 如何下载Github单个文件(Windows平台)

    如何下载Github单个文件(Windows平台) 前提 安装Chrome 浏览器 Chrome浏览器 安装迅雷软件 安装Chrome 迅雷插件 可能商店里迅雷插件有好几种,这里使用这一种 一般使用者 ...

  2. 为 github markdown 文件生成目录(toc)

    业务需要 在编写 github 项目时,有时候会编写各种 README.md 等 markdown 文件,但是 github 默认是没有目录的. 于是就自己写了一个小工具. markdown-toc ...

  3. 转载:删除github上文件夹的两种方式

    http://www.jianshu.com/p/286be61bb9b8 删除github上文件夹的两种方式(解决已经加入ignore的文件夹无法从远程仓库删除的问题) 如果此文件夹已被加入git追 ...

  4. 如何用Github版本控制非Github库

    Git的图形化客户端有很多,不同的人可能习惯用不同的客户端.本人更习惯于Github的客户端,因为上Github比较多,同步代码到Github用官方的客户端是最方便的,所以也就更习惯于使用Github ...

  5. Github学习之路-初出茅庐,接触Github,了解Github

     一.了解GitHub 作为一个在线协作网站,GitHub允许程序员们分享和协力于开源项目的工作. GitHub不仅是一个分享开源创作并与其它程序员合作的好地方,你也可以从GitHub上收到自己作品的 ...

  6. 【Github教程】史上最全github用法:github入门到精通

    原文 http://www.eoeandroid.com/thread-274556-1-1.html [初识Github] 首先让我们大家一起喊一句"Hello Github". ...

  7. Github 上利用github pages 部署站点

    一:起始 准备项目,如果你在github上已有项目,则无需新建,如果你要新起一个项目,则需先在github上创建一个项目 本文以已创建好的 github/TestGitPage  为例. 二:设置gi ...

  8. 如何从本地把项目上传到github&&如何把github项目通过clone复制下来

    一.第一步---注册一个Github账号 首先要在GitHub上创建一个帐号,可以去官方网站注册一个账号. 二.git安装 下载地址:http://msysgit.github.io/ 二.第二步-- ...

  9. github学习:如何从本地把项目上传到github&&如何把github项目通过clone复制下来,详细教程

    一.第一步---注册一个Github账号 首先要在GitHub上创建一个帐号,可以去官方网站注册一个账号. 前提:本地安装一个git 本人github:https://github.com/saucx ...

随机推荐

  1. (简单) CF 44D Hyperdrive,数学。

    In a far away galaxy there are n inhabited planets, numbered with numbers from 1 to n. They are loca ...

  2. HDU 5678 ztr loves trees

    这题也是一眼标算..... 先搞一次dfs,把树转换成序列,对每个节点看子树的中位数,也就是看某段区间的中位数,这样就可以主席树求区间第k大值解决. 注意:询问的次数有1000000次,每次去询问会T ...

  3. (中等) POJ 2948 Martian Mining,DP。

    Description The NASA Space Center, Houston, is less than 200 miles from San Antonio, Texas (the site ...

  4. springMVC+Hibernate配置

    本文描述下 sypro 项目中使用 springMVC+Hibernate配置,初学SpringMVC做下简单整理解. 1.web项目首先我们要使用 web.xml文件将 spring配置引入进来 & ...

  5. nodejs抓取数据二(列表解析)

    这里做得比较暴力,没有分页取出数据解析,O(∩_∩)O哈哈~,居然没有被挂机.不过解析的坑特别多...不过大部分我想要的数据都拿到了. //解析列表数据 var http = require(&quo ...

  6. javascript--study

    1.函数传参:按值传递 对于数字.字符串等是将它们的值传递给了函数参数,函数参数的改变不会影响函数外部的变量. 对于数组和对象等是将对象(数组)的变量的值传递给了函数参数,这个变量保存的指向对象(数组 ...

  7. C语言-switch语句

    switch (表达式的值) { case 1: 语句1 break; case 2: 语句2 break; case 3: 语句3 break; case 4: 语句4 break; ...... ...

  8. C# new和override的区别

    浅析C# new和override的区别 C#中new和override是继承中经常用到的两个关键字,但是往往有时候容易把这两个关键字的作用搞混淆. new C# new关键字表示隐藏,是指加上new ...

  9. 初识Google code jam平台

    为了熟悉一下code jam的平台,今天简单试了一下,做了一下Qualification Round Africa 2010的三道题目,都是很基础的. A题:给一个数n和一系列数a[],从a[]中找出 ...

  10. python2与python3编码问题

    python2: UnicodeDecodeError: 'ascii' codec can't decode byte 0xc4 in position 33: 解决办法: 在报错的页面添加代码:  ...