我们该如何开始自己的GitHub之旅?

译文
开发 项目管理
Git采用的是每项任务一个分支的处理模式;本地副本就是大家正在使用的分支。我们可以向其提交内容、进行回滚并定期将其推送至GitHub服务器。基础操作只分为添加、提交与推送三种。GitHub是一套需要付费的企业代码库,但其开源项目是完全免费的……

[[117667]] 

如果大家打算学习如何使用Git,但却不打算自行配置服务器,那么GitHub可能会成为各位最理想的施展平台。

并不只是我自己有这样的想法。在最近的一次现场走访当中,Groupon公司人才发掘主管告诉我,该公司最近已经把招聘英才的阵地由原本的简历网站转移到了GitHub当中。

如果这还不足以推动大家学习Git,那么免费教程算不算另一种吸引力?各位朋友们运气不错,请花上一个小时跟随本文并加以实践,GitHub之旅就此开始。

首先寻找一个Git项目——或者直接使用我们的示例

Git采用的是每项任务一个分支的处理模式;本地副本就是大家正在使用的分支。我们可以向其提交内容、进行回滚并定期将其推送至GitHub服务器。基础操作只分为添加、提交与推送三种。GitHub是一套需要付费的企业代码库,但其开源项目是完全免费的。

在今天的文章中,我们将创建一个开源项目并将其保存在GitHub当中。我们只需要少部分代码即可完成整个流程。

作为***步,大家首先选择一个包含部分代码以及创建步骤的项目。如果大家手头没有任何可用代码,也可以使用The Factory Simulation——别忘了,它需要有Ruby的支持才能正常运行。大家只需创建一个子目录、再在其下另创建一个名为“lib”的子目录,而后将五个文件复制到正确的位置。

为了理解代码内容,大家需要对Ruby具备初步了解。要运行该应用程序,我们前往根目录并通过命令行输入“ruby factory_multi3.rb”。运行测试的话,则需要将目录切换至测试目录并输入“ruby run_all.rg”。(这是由代码编写者Matt Heusser贡献的内容,基于由Zach Spencer贡献的开源许可。)

下一步,创建一个GitHub账户

访问github.com并登录。现在下载并安装***版本命令行工具。利用这套工具,我们可以通过Web界面创建一套库,而后利用命令行将我们的代码导入至GitHub当中。

从登录页面开始,点击右侧的绿色“+New Repository”按钮:

首先创建一套库。如果大家无法顺利进行,可以考虑参考GitHub的使用指南。

库创建完成之后,启动命令行并运行各项命令。注意,请确保已经将目录变更为代码所在目录。

  1. touch README.md 

提示:Windows不支持“touch”命令。大家可以编辑并保存一个名为README.md的空白文本文件。

  1. git init  
  2. git add *  
  3. git commit -m "first commit"  
  4. git remote add origin https://github.com/(Username)/(Repository_name).git  
  5. git push -u origin master 

下面输入大家的用户名与密码内容。恭喜各位,现在大家已经在GitHub拥有了自己的公开代码——其URL为http://github.com/(用户名)/(库名称)——全世界都可以查看其内容。

我刚刚做了些什么?

首先,利用“touch”命令,我们创建了一个自述文件,大家以在线方式查看库的根目录时git init会显示其内容。通过这个文件,我们可以告知用户们该如何运行我们的程序。

Git init会在本地目录中创建一个空白的Git库。“Add *”负责将本地库中的所有文件添加到该库当中及其子目录当中,同时将所有已提交的变更整理至一套变更集当中。请注意命令中的-m结尾,它代表的是版本说明。如果大家不添加-m参数,那么Git会强制要求我们在vi中对其进行编辑。

接下来,我们利用Git远程添加功能将自己的变更内容连接至GitHub。如果大家运行有自己的服务器,则只需要变更其中的URL即可。***,我们利用git push将变更结果推送至GitHub。

现在,如果我访问https://github.com/MattExcelon/factory6(我刚刚导入的内容),则会看到README.md文件中没有任何内容。我们对其进行编辑,并添加如下文本。大家可以直接把内容剪切并粘贴进去。

  1. The Factory Simulation  
  2.  From CIO.com, uploaded by (name), based on the work of Matthew Heusser   
  3. Matt@xndev.com  
  4.  Distributed under the GNU GPL 2.0 license:   
  5. http://choosealicense.com/licenses/gpl-2.0/  
  6.  Imagine a factory that has a number of stations. Each day, work proceeds through   
  7. the stations.  
  8.  The stations have high variability but are balanced. We simulate this with a six   
  9. sided die. Users enter the number of stations and days and the application shows   
  10. how work processes. The advanced version, factory_multi3.rb allows you to simulate   
  11. multiple runs of the factory (run it a thousand times and take the averages) or   
  12. change the number of dice.  
  13.  ## Dependencies  
  14. This code developed and tested under ruby 2.0.0p247. As long as you have ruby 1.9.3   
  15. or higher you should be fine.  
  16. ## Running the Simulation  
  17. 1. `cd this/project/directory`  
  18. 2. `ruby factory.rb` or `ruby factory_multi3.rb`  
  19. ## Running the Tests 

现在大家已经对代码作出了变更,下面需要将其提交至服务器端。因此:

  1. git add READM.md  
  2. git commit -m “Updated the Readme to provide information”  
  3. git push 

完成以上步骤后,在我们的浏览器中刷新http://github.com/(用户名)/(库名称)并查看显示出的README内容。大家会注意到,其中的井号(#)代表Markdown语言的一种type,用于创建标题。(大家可以点击此处查看GitHub关于Markdown的帮助信息。)

创建自己的库之后

GitHib不仅仅是一个网站,它代表的是一整个社区。大家可以关注其他用户、关注项目工程并获取与变更相关的通知信息;GitHub甚至提供建议指导各位从零开始进行体验。

除了自己的作业内容之外,大家可能还希望保留其他用户的工程副本并对内容作出修改。要对代码进行fork,可以查看对应GitHub库(下图地址为https://github.com/taq/vim-refact)并点击右侧的“Fork”。大家可以建立属于自己的版本号,并使其自动重新定向至我们的代码库。

 

在自己的页面中(目前的URL为https://github.com/heusserm/vim-refact),大家会在窗口右侧看到“HTTPS clone URL”。在命令行中,进入Git安装根目录并输入以下内容:

  1. git clone (URL you copied) 

Git会在我们的本地设备上为对应库创建一套副本,现在大家可以对其进行添加、提交以及推送操作。

这些变更内容会被定位至我们自己的库,请放心、不会影响到任何其他用户。一切准备就绪后,大家可以通过发送请求通知其他用户我们对代码作出的变更,并让他们帮忙进一步雕琢自己的开发成果。

在今天的文章中,我们主要关注的是Git的一部分基本要素——具体来讲,如何向GitHub添加/提交/推送代码,以及如何创建代码库。在GitHub上拥有自己的代码成果是吸引招聘者眼球的有效手段。虽然创建个人项目需要投入大量时间与精力,但这一切足以让招聘者积极与我们联系甚至提供理想的工作岗位。

我们已经在GitHub上创建了一套功能完备的应用程序,并对其进行了测试。下一步待完成的工作应该是将其与持续集成(简称CI)系统进行整合,例如Jenkins,并将结果推送至GitHub以为我们的软件生成新的构建/测试运行流程。

但这就是下一篇文章要聊的内容了,我们到时候见。

英文:http://www.cio.com/article/2456026/development-tools/how-to-get-started-with-github.html?source=CIONLE_nlt_entapps_2014-08-04#tk.rss_developmenttools

责任编辑:林师授 来源: 51CTO
相关推荐

2011-08-17 09:18:11

项目管理

2013-08-19 15:36:07

在家办公程序员

2017-02-24 21:10:47

虚拟化

2020-06-20 14:15:53

信息安全数据技术

2022-09-26 00:48:14

线程池阻塞数据

2012-06-21 13:46:22

javascriptworklight嵌入式系统

2018-07-27 06:08:12

2014-01-22 09:25:44

2018-08-08 08:40:54

DjangoJuliaFlutter

2013-10-17 09:37:07

2010-07-26 10:01:01

虚拟化

2021-04-29 15:55:51

编程IT程序员

2015-12-10 10:23:12

UnikernelDevOps虚拟化

2012-05-11 10:12:48

紧急需求

2011-02-15 15:34:12

IE9 RC

2013-01-10 09:47:50

辞职就业面试

2019-08-20 09:16:39

6G网络1G

2017-02-28 09:02:10

科技早新闻

2022-04-29 15:55:51

安全电子邮件病毒

2018-08-05 06:48:34

点赞
收藏

51CTO技术栈公众号