文章转载自http://blog.csdn.net/loadsong/article/details/51591407

看到一篇关于GitHub的文章,感觉不错,因此转载来以备推敲学习。

不会用 Git ,就不能用 github 吗? 不是这样的。Github 的网站上通过网页操作就已经能实现很多强大的版本控制功能了,来一起看一看。

从注册开始

来到 http://github.com 的首页,就可以看到下面的注册界面:

填写自己的用户名邮箱,再设置一个妥妥的密码,点击 Sign up for Github 按钮,世界就属于你了。对于开源项目 github 是免费的,所以不用管付费相关的内容。接下来初次注册的用户会看到一共四步的 github 使用教程。

今天主要介绍第二步,其他几步回头另行介绍。所以这个四步走,稍微看一下,关了就行了。以后可以到http://help.github.com 找到这些内容。另外你可能还会看到要求新用户去验证一下邮箱地址的提示,这个简单,到邮箱之中找到验证邮件,点一下里面的链接就可以了。

最后一步来给自己添加一个头像吧,github 是一个真正的交朋友的地方,每次你发评论或者写代码都是代表一个活生生的人格。

登录后的用户都可以找到”设置“的图标,一个小齿轮,点一下,默认看到的就是 Profile(个人信息),选择图片上传就可以了。

创建项目仓库

Github 上操作虽多,但是都是围绕一个个的项目展开的。

一个项目其实就是一个文件夹,里面放着所有的项目文件,可以是代码,也可以是任意的文档。但是在 github 这里,每一个项目都不仅仅是最新版本的代码,还保持着所有的历史版本和修改记录,当然这个后台就是通过 Git 来实现的。Github 上的项目有一个新名称,叫 ”仓库“ ( repository )。说白了,一个仓库就是一个用 git 进行了版本控制的项目。

点一下页面左上角的小猫图标,就可以到达 dashboard (控制面板),这个词本来的意思是汽车上的仪表板,日常所有的操作都在这里做。

下图左侧,图标1处,可以看到相关项目的最近更新,右侧图标2处,是我自己的项目列表。现在我要创建一个项目,要点3处这个按钮。

这就到达了新建项目的页面:

注意要勾选 Initialize this repository with a README ,然后创建这个项目。也会看到 Create
Repository
 按钮的上方还有两个选择框,一个是关于 .gitignore 的,另一个是关于 LICENSE 的。这两项如果选择了就是在项目中又多了两个文本文件,一个是
.gitignore 文件,另一个是 LICENSE 文件,暂时都不选就可以,回头需要了可以自己用编辑器新建。

编辑项目

创建项目完成后,就会跳转到 https://github.com/happypeter/coco 这个页面。这里的几乎每一个可以点的地方都会涉及到一个新概念,不用着急,后面咱们都会介绍到。先来瞄准一个最为重要的,叫
commit,如图中所指:

每次项目修改后,点击 commit 按钮就可以生成一个新的版本。commit 英文的基本意思是执行某个重要的事情,例如 commit suicide,自我了断。但是在 git 这里,做动词讲的时候是保存版本,当名词讲就是版本。

现在就来编辑一下。点击上面图中,项目名 coco 右侧的加号,进入下面界面。

来新建一个文件叫 love.md,在标号1处。填写文件内容,标号2处。下面 Commit
new file
 部分填写的是“版本留言”( commit message ),说明一下为什么要做这次修改,一方面是跟队友沟通的一种形式,另一方面如果项目版本多了,自己也可以用这个留言来定位特定的一次修改。标号3处填写一个一行的留言,标号4处可以写详细留言,这一项是可选的。 最后,点击 Commit
new file
 按钮,一个新版本就做好了。

顺便提一下,github 的页面编辑器是经过特殊强化的,用起来非常舒服。点下图1处,可以进入全屏模式,编辑后还可以用2处的 Preview changes 预览一下修改内容。

自动跳转回项目页面之后,会发现原来 1 commit 的地方,现在已经变成了下图所示的 2
commits

2 commits 是个链接,点进入就进入了项目历史的页面。

现在看到历史上有两个版本,点开上面的一个版本,或者说一个 commit,就可以看到一个 commit 所包含的信息了。

最重要的是 版本号 ( commit id )。每个 commit 都有一个,是一个40位16进制数,可以用来定位每个版本。注意一下地址栏中 url 的格式,以后只要是拿到了一个版本号,就可以照猫画虎的敲上面这样的链接来查看这次的修改的详细内容了,方便吧?!

一个 commit (版本)中最核心的内容就是这4个 w 了,谁( who )在什么时间( when )改了那些内容( what ),最后一个是为什么要改( why ),这个是版本留言发挥的作用。

一条历史线

所有 commit(版本) 组成了一条历史线。那么这条线是怎么串起来的呢?随便打开一个项目,打开具体一个 commit,通常会看到下图的内容:

上面显示了当前版本号( commit id ),但是同时还显示了它之前的一个 commit 的版本号,也就是它的“父版本”( parent ) 的版本号。底层原理是这样,一个 commit 内部是保存了它的 parent 的版本号的,这样就把它和它爹连在了一起,爹还有自己的爹,就会形成下图的一条历史线。

有些版本工具是以 1,2,3… 作为版本号的,但是 git 这里每个版本号都是40位十六进制数,表面看起来稍微麻烦一些,但是实际上妙用无穷。

总结

暂时只是介绍了最为核心的版本控制功能的一部分,更多强大的功能,后面继续介绍。

[GitHub]第一讲:浏览器中使用GitHub的更多相关文章

  1. 内核开发知识第一讲.内核中的数据类型.重要数据结构.常用内核API函数.

    一丶内核中的数据类型 在内核中.程序的编写不能简单的用基本数据类型了. 因为操作系统不同.很有可能造成数据类型的长度不一.而产生重大问题.所以在内核中. 数据类型都一定重定义了. 数据类型 重定义数据 ...

  2. 托管到github上的网页图片在百度浏览器中显示不全

    这几天做了个较完整的网页放到github上,上传后看网页效果. 在Firefox浏览器中,显示正常. 在百度浏览器中,空了一大块位置(图片位置),偏偏只空了这一块,其它地方的图片都好好的. 点击f12 ...

  3. myeclipse跟eclipse中使用github做版本控制工具

    今天早上花了一上午的时间,了解了在myeclipse跟eclipse中使用github. 好吧 说说怎么做的,让大伙少走一点路,我就简单描述下,需要软件的私信我 第一:下载git 第二:靠谱.但是pu ...

  4. idea中使用github

    转载:https://www.cnblogs.com/javabg/p/7987755.html 1.先安装git插件,本机安装git在C:\InstallSoftWare\Git 2. 在Idea ...

  5. Visual Studio 2012中使用GitHub

    前言 一直以来都想使用Git来管理自己平时积累的小代码,就是除了工作之外的代码了.有时候自己搞个小代码,在公司写了,就要通过U盘或者网盘等等 一系列工具进行Copy,然后回家才能继续在原来的基础上作业 ...

  6. ubuntu系统中解决github下载速度慢问题

    如果你在使用github,出现访问和下载速度慢问题,可以通过修改host解决.记得不要踩坑哦!分四步: 第一步:查询速度快的IP地址 在http://tool.chinaz.com/dns中查询下面三 ...

  7. VS2010中使用Github进行版本控制【补充】

    http://blog.csdn.net/softwave/article/details/8499264 前面我在文章<VS2010结合Github进行版本控制>中介绍了VS 2010中 ...

  8. 如何在IDEA中使用GitHub

    第一步:在GitHub网站中注册自己的账号 地址:https://github.com/ 第二步:下载Git客户端 地址:https://git-scm.com/ 第三步:在GitBash中配置用户名 ...

  9. 学会Git玩转GitHub(第一篇) 入门详解 - 精简归纳

    学会Git玩转GitHub(第一篇) 入门详解 - 精简归纳 JERRY_Z. ~ 2020 / 9 / 25 转载请注明出处!️ 目录 学会Git玩转GitHub(第一篇) 入门详解 - 精简归纳 ...

随机推荐

  1. (转载)总结一下SQL语句中引号(')、quotedstr()、('')、format()在SQL语句中的用法

    总结一下SQL语句中引号(').quotedstr().('').format()在SQL语句中的用法以及SQL语句中日期格式的表示(#).('')在Delphi中进行字符变量连接相加时单引号用('' ...

  2. Java访问修饰符及其访问控制

    java中的访问修饰符,可以看成是人的秘密分享级别.private 个人秘密 ,protected 家族秘密,default(不写修饰符)社区(邻居)秘密(在一个包下的能访问),public 社会秘密 ...

  3. 手写JAVA虚拟机(二)——实现java命令行

    查看手写JAVA虚拟机系列可以进我的博客园主页查看. 我们知道,我们编译.java并运行.class文件时,需要一些java命令,如最简单的helloworld程序. 这里的程序最好不要加包名,因为加 ...

  4. ionic3-ng4学习见闻--(自定义ion-tab图标)

    学习混合开发语言,目的就是为了快速开发一个适用于多平台的app. app基本都会有footer,也就是tabbar,用来快速导航不同的页面. ionic也有这个组件,ion-tab. 常用方法如下: ...

  5. js页面刷新跳转的几种方式及区别

    跳转常用方法: window.location.href="index.php"; window.history.back(-1);//类似于按钮,参数是负几,就后退几次. win ...

  6. 使用RestTemplate访问restful服务时遇到的问题

    可以通过通过wireshark抓包,使用Postman发送请求 wireshark是非常流行的网络封包分析软件,功能十分强大.可以截取各种网络封包,显示网络封包的详细信息.使用wireshark的人必 ...

  7. Java HttpClient伪造请求之简易封装满足HTTP以及HTTPS请求

    HttpClient简介 HTTP 协议可能是现在 Internet 上使用得最多.最重要的协议了,越来越多的 Java 应用程序需要直接通过 HTTP 协议来访问网络资源.虽然在 JDK 的 jav ...

  8. Java多线程并发工具类

    Semaphore-信号灯机制 当我们创建一个可扩展大小的线程池,并且需要在线程池内同时让有限数目的线程并发运行时,就需要用到Semaphore(信号灯机制),Semaphore 通常用于限制可以访问 ...

  9. 如何改变hr颜色

    html中用css改变颜色,<hr style="border:0;background-color:#ff0000;height:1px;">如果不加border:0 ...

  10. Linux 虚存 linux2.6内核特性

    一.大型页面的支持 当代计算机体系结构大都支持多种页面大小,例如,IA-32体系结构支持4KB或4MB的页面, Linux操作系统只是将大型页面用于映射实际的内核映像.大型页面的使用主要是为了改进高性 ...