一分钟认识GitHub

机缘巧合之下,我开始使用 GitHub ,但事实上,刚刚入门的我不知道如何才能使 GitHub 发挥他的全部功能。不久之前,我偶然听了李福斯先生对 GitHub 的介绍,受益匪浅。

简单的来说, Git 是一个分布式的版本控制系统。顾名思义,在你编辑程序代码的时候(特别是在多人协作一个项目时),它将会自动帮你实现代码以及版本的更新。这意味着你不必每次都手动地将自己修改的内容同步到云端。这些工作都可以由 Git 在适当的时候自动完成。这样既能避免手动同步的麻烦和风险,更能为程序员省下大量时间。

一、安装与配置

虽说Git 预装在所有 Mac 和  Linux 电脑中,但预装的 Git 无一例外都版本陈旧。所以,无论你是使用Mac , Linux 还是 Windows ,都必须自己安装 Github。
安装过程在这里就不再赘述。安装完成之后,最重要的一步当然是配置 Git。

先执行以下命令:

$ git config --list

这条命令将会读取并显示 Git 的配置文件,包括个人身份信息和配色等各方面内容。

使用”git config”命令,你可以修改 Git 的配置文件来打造属于你的独一无二的工作环境。但首先,你必须配置你的用户昵称和邮箱。因为这些信息会嵌入到你提交的所有文件中。

执行以下命令配置,请注意,这条命令只能执行一次,因为 Git 将一直使用该信息来处理你在系统中所做的一切操作。如果你希望在一个特定的项目中使用不同的名称或e-mail地址,你可以在该项目中运行该命令但不附加 –global 选项。

$ git config --global user.name [name]
$ git config --global user.email [em]

二、创建副本

在开始编辑你的项目之前,你需要从 Github 上面把你托管在云端的项目抓取到本地。

执行以下命令:

$ git clone [url]

这将在您的系统上创建与 GitHub 上 Git 储存库相匹配的文件夹结构。

GitHub 的提示:在一个库中,如果你按住“t”键,你将进行过滤搜索,用来查找与您搜索的文件名匹配的文件。因为 GitHub 是一个文本编辑器,所以你可以很方便的在其中改动内容并且直观的看到改变的结果。
在做出正式改变之前,最好先新建一个“分支”并在分支中工作。使用分支意味着你可以从开发主线上分离开来,然后在不影响主线的同时继续工作。这将有利于你对一个大型项目做一些小的改动。

执行以下命令:

$ git branch feature/add-subtraction
$ git checkout feature/add-subtraction

这将创建一个新的分支,在分支上工作将允许你在本地迭代局部代码,而无需担心搞砸主线。如果你搞砸了,只需要放弃该分支,并重新创建一个基于主线的分支即可。

三、做出改变

如果想要知道当前目录所有还没有被git管理的文件,或者是被git管理且被修改但还未提交的文件,那么执行以下命令。
$ git status

你可以通过执行以下命令提交更改:

$ git commit src/main/java/com/github/Calculator.java -m "added subtraction"

该命令用于在沙盒提交更改,并同时附加“添加去除(added subtraction)”的消息。必须记住的是,这种变化仅仅是在本地机器上做出变更,你必须把变更推送到 GitHub 上。

要提交变更,执行以下命令:

$ git push origin feature/add-subtraction

现在你会看到一个新的分支列表,它列出了原有分支的增减变化。最后,如果你如果想把这些提交给管理员,你需要发送一个“拉取”的请求,让你的分支被拉取到主分支上。你发送的拉取请求可以通过在 GitHub 上启动一个关于在这个代码的特征会话来完成。

你还可以用 GitHub 来做很多事情,现在我已经准备好开玩一些新项目了!

原文链接:http://opensource.com/life/15/11/short-introduction-github

译文链接:http://www.linuxstory.org/short-introduction-github

一分钟认识GitHub的更多相关文章

  1. 【原创】30分钟入门 github

    很久没更新了,这篇文章重点在github的入门使用,读者可以下载github for windows shell,边看边操作,加深印象. 好了,30分钟的愉快之旅开始吧: 一.github使用的注意事 ...

  2. 十分钟使用github pages +hexo拥有个人博客

    最近想自己搭建自己的个人博客,毕竟这样觉得比较geek,但是搜了资料,感觉良莠不齐,好多东西说的含糊不清,于是自己记录下自己的搭建过程. 1, 安装nodejs 2, 安装git 3, 申请githu ...

  3. 在GitHub上建立个人主页的方法

    GitHub就不需要介绍了,不清楚可以百度一下.只说目前GitHub是最火的开源程序托管集中地了,连PHP的源码都在GitHub上面托管了(https://github.com/php ). GitH ...

  4. 在GitHub上建立个人主页的方法(转载)

    GitHub就不需要介绍了,不清楚可以百度一下.只说目前GitHub是最火的开源程序托管集中地了,连PHP的源码都在GitHub上面托管了(https://github.com/php ). GitH ...

  5. 和逛微博、刷朋友圈一样玩转 GitHub

    自打毕业之后,可以说每天打开 Github 或Email 看有没有 watch 项目的消息或者自己项目的 issue,然后在Explore 看看社区内项目的走势,紧接着开始写代码搬砖的工作,偶尔也会关 ...

  6. GitHub创建个人主页

    在GitHub,一个项目对应唯一的Git版本库,创建一个新的版本库就是创建一个新的项目.访问仪表板(Dashboard)页面,如图3-1,可以看 到关注的版本库中已经有一个,但自己的版本库为零.在显示 ...

  7. 利用Github免费搭建个人主页(个人博客)

    之前闲着, 利用Github搭了个免费的个人主页. 涉及: Github注册 Github搭建博客 域名选购 绑定域名 更多 一  Github注册 在地址栏输入地址:http://github.co ...

  8. Jekyll+GitHub Pages部署自己的静态Blog

    混了这么久,一直想拥有自己的博客,通过jekyll和GitHub Pages捣腾出了自己的博客(https://www.ichochy.com) 一.安装jekyll 首先有安装Ruby的开发环境 运 ...

  9. 基于Hexo+Github Pages搭建的博客

    概念 Github Pages可以被认为是用户编写的.托管在github上的静态网页.使用Github Pages可以为你提供一个免费的服务器,免去了自己搭建服务器和写数据库的麻烦.此外还可以绑定自己 ...

随机推荐

  1. pc加入域认证细节

    计算机组织形式 工作组(无法统一管理,无法统一身份验证) 域 win权限分配机制 管理本地用户 新建用户-加入管理员组. 针对文件夹基于(用户组)设置权限 用户SID 创建一个用户时候,每个用户都有一 ...

  2. JNI 程序开发

    参考资料: http://blog.csdn.net/wwj_748/article/details/28136061 JNI_最简单的Java调用C/C++代码 http://blog.csdn.n ...

  3. Android开发探秘之一:创建可以点击的Button

    感觉到自己有必要学习下手机开发方面的知识,不论是为了以后的工作需求还是目前的公司项目. 当然,任何新东西的开始,必然伴随着第一个HelloWorld,Android学习也不例外.既然才开始,我就不做过 ...

  4. activiti-explorer:使用mysql导入外部bpmn文件后存在乱码的问题

    我已经采取了如下步骤,但是仍然还是乱码 1. 在mysql中创建数据库时指定使用utf8编码: CREATE DATABASE Activiti DEFAULT CHARACTER SET utf8 ...

  5. Python类库下载

    https://sourceforge.net/projects/pywin32/files/pywin32/ WMI库的安装 下载 http://timgolden.me.uk/python/wmi ...

  6. 如何设置nesC在vim中语法高亮

    默认的vim没有支持nesC语法高亮,给阅读源码带来不便.不过可以通过装NesC Syntax Highlighting插件来解决这个问题,具体操作如下:   步骤一:下载插件 在http://www ...

  7. Linux c实现服务端与客户端聊天

    主要利用socket通信实现,具体代码如下 客户端: #include <stdio.h> #include <stdlib.h> #include <string.h& ...

  8. Fedora 12 环境搭建

    又来折腾发行版了. 这一回是Fedora12,搞的挺艰难的 下载了Fedora-12-i386-DVD.iso,无论使用ultraiso还是dd都无法安装. 后来下载了一个ImageWriter.ex ...

  9. Android UI基础之五大布局

    Android  UI基础之五大布局 Android的界面是有布局和组件协同完成的,布局好比是建筑里的框架,而组件则相当于建筑里的砖瓦.组件按照布局的要求依次排列,就组成了用户所看见的界面.Andro ...

  10. Java学习笔记(十七)——java序列化

    [前面的话] 做项目总是要用到很多东西,遇到一个新的知识,并不是这个知识出来的时间短,而是对于自己来说是新的,所以就需要自己去学习,希望今后可以提高学习的效率. 这篇文章是关于Java 序列化的,选择 ...