先附上下载地址

http://windows.github.com/

git-scm.com是版本控制软件Git的官方网站。

Git和GitHub的区别

  • Git是一个分布式的版本控制系统,与SVN类似;最初由Linus Torvalds编写,用作Linux内核代码的管理。在推出后,Git在其它项目中也取得了很大成功,尤其是在Ruby社区中,所以目前有很多著名的项目都使用Git进行版本控制;

  • 而GitHub是托管各种git库,并提供一个web界面的一个网站(官方地址是https://www.github.com/),可以通过本地的git客户端将自己的代码上传至GitHub;可以在GitHub上建立公共库,作为开源软件或个人使用,也可以付费建立私有库,这样就可以作为公司内部软件的代码管理工具;

GitHub术语解析

Blame

Git中的“blame”特性描述了文件的每一行的最近一次修改信息,包括修改内容、作者和时间等;可用于追踪某软件新特性的添加及引起bug的提交操作;

Repository

库是GitHub的最基本元素,可想象成本地的项目文件夹;一个库包含所有的项目文件(包括帮助文档),并保存每个文件的修改历史;库可以有多个合作开发者,也可以作为公共库或私有库的形式开发;

Private Repository

私有库,是指只能被库的创建者或者合作开发者查看并编辑的库,需要付费使用;

Branch

分支是一个库的并行版本,包含在库内,允许独立的开发而不影响现有主分支(primary or master)的运行;当在分支的修改需要发布时,就可以将分支合并(merge)至主分支(master branch),这样利于多人的分布式开发;

==============================术语分类解析分割线==================================

Pull Request

即代码合并请求,由其它开发者或用户向项目的collaborators提议的修改请求,collaborators觉得修改信息合理有效即接受,否则拒绝;

Merge

将一个分支中的修改内容应用到另一个分支的操作就做合并;若两个分支内的修改内容无冲突,则可以通过合并请求(a Pull Request)或命令行(the command line)完成合并操作;

Clone

克隆,是将GitHub上的库文件整个复制到本地主机上,可以实现离线修改,等上线后再同步至Github上的库即可;

Commit

提交信息,或者称为修改信息,是个人提交的对文件的修改记录;

Fork

对其它开发者的库的个人复制,复制的库存在你自己的账户上,你可以自行修改项目内容而不会影响原始的库,也可以将自己的修改通过合并请求(a pull request)的方式请求原始库的开发者更新你的修改;

Fetch

取回,表示从在线的库上获取最新的修改信息而不需要合并代码,取回的代码可以与你本地的分支代码进行比较;

Push

推送,表示将本地的修改内容推送至线上的库,这样其它的开发者就可以通过GitHub网站访问到你的修改内容了;

Remote

远端版本,即类似于GitHub.com的非本地主机的项目版本,可以连接至本地克隆的版本以实现内容同步;

==============================术语分类解析分割线==================================

User

用户,指个人注册的GitHub账户,每个用户都可以拥有多个公共库或私有库,也可被邀请加入organizations或称为collaborates;

SSH Key

私钥,是GitHub用以验证你本地主机的身份的,并用此密钥加密传输GitHub网站和你本地主机的数据传输,以保证安全性;这个是需要在“Set up Git”步骤中配置的;

Organizations

组织,即多个开发者组成的团体,可包含众多的库和开发团队;

Collaborator

合作开发者,被库的所有者邀请共同开发某一项目,拥有对库的读写权限;

Contributor

贡献者,对项目有所贡献(如提交代码,修复bug等)的开发者,但不具备合作开发者的访问权限;

==============================术语分类解析分割线==================================

Diff

差异,指2个commit或保存的改变间的差异,可以很直观的看出一个文件自上次commit后增加或删除的内容;

Open Source

开源,原指可自由使用、修改和传播的软件,现扩展为一种超越软件的合作哲学,即工件(working materials)在线可用,可被任何人复制(fork)、修改(modify)、讨论(discuss)、并提出修改意见(contribute to);

Markdown

一种轻量级的标记语言,书写简单,不同于html,无需大量的<tag>就可以实现内容的格式化;GitHub上的众多库中的帮助文档就是这种格式,如README.md;

Upstream

上游,对于一个branch或者fork来说,源库的主分支即是其它修改信息的源头,被称为upstream,相对的其它branch或fork就被称为downstream了;

详见https://help.github.com/articles/github-glossary

推荐文章

如何通过Git GUI将自己本地的项目上传至Github

github for Windows使用介绍

搭建一个免费的,无限流量的Blog----github Pages和Jekyll入门

Github for Windows使用图文教程

本文参考:http://www.cnblogs.com/xiaocen/p/3727324.html

Github简介的更多相关文章

  1. 【译】10 款国外实用、有趣的 GitHub 简介 README

    本文翻译自 dev.to 文章<10 Standout GitHub Profile READMEs> 原文链接见:https://dev.to/github/10-standout-gi ...

  2. 2015年12月01日 GitHub入门学习(一)GitHub简介

    序:Github理念是Social Coding(社会化编程).octocat是它的吉祥物. 一.Github与Git的区别与联系 区别:GIT是仓库,Github是提供一种将代码提交到Git仓库的服 ...

  3. 项目版本管理 github简介

    git config user.email "c.wuliying@samsung.com"git config user.name "swportal" ** ...

  4. Nordic官网/Infocenter/Devzone/Github简介

    1. Nordic官网及资料下载 Nordic官网主页:https://www.nordicsemi.com/,进入官网后,一般点击"Products"标签页,即进入Nordic产 ...

  5. Git 与 GitHub 简介

    Git 与 GitHub 的来历 Linux 之父 Linus 在 1991 年创建开源的 Linux 操作系统之后,多年来依靠全世界广大热心志愿者的共同建设,经过长足发展,现已成为世界上最大的服务器 ...

  6. git 和github简介

    关于github不清楚的可以百度, 在这里,可以创建一个新的仓库 点击Create repository后会出现下面这些信息,其中第一块是仓库的url链接 第二块是你在本地目录中创建一个READEME ...

  7. GitHub 简介

    用详细的图文对GitHub进行简单的介绍. git是一个版本控制工具,github是一个用git做版本控制的项目托管平台. 主页介绍: overview:总览.相当于个人主页. repositorie ...

  8. git入门及上传项目到github

    Git入门:       如果你完全没有接触过Git,你现在只需要理解通过Git的语法(敲入一些命令)就可以将代码上传到远程的仓库或者下载到本地的仓库(服务器),我们此时应该有两个仓库,就是两个放代码 ...

  9. GitHub 使用教程图文详解(转)

    大纲: 一.前言 二.GitHub简介 三.注册GitHub账号 四.配置GitHub 五.使用GitHub 六.参与GitHub中其它开源项目 七.总结 注,GitHub官网:https://git ...

随机推荐

  1. 洛谷 P2746 [USACO5.3]校园网Network of Schools 解题报告

    P2746 [USACO5.3]校园网Network of Schools 题目描述 一些学校连入一个电脑网络.那些学校已订立了协议:每个学校都会给其它的一些学校分发软件(称作"接受学校&q ...

  2. ThinkPHP5 隐藏index.php问题

    隐藏index.php 可以去掉URL地址里面的入口文件index.php,但是需要额外配置WEB服务器的重写规则. 以Apache为例,需要在入口文件的同级添加.htaccess文件(官方默认自带了 ...

  3. python2.x到python3.x函数变化

    首先,python 3.x中urllib库和urilib2库合并成了urllib库. 其中urllib2.urlopen()变成了urllib.request.urlopen() urllib2.Re ...

  4. iptables后,外网访问网站可以,内网无法访问【已解决】

    最近,到处看到有人问这个问题,怎么以前没人问,现在这么多人问呢?前两天我还在华为的论坛上仔细的说了这个问题,现在复制到这边来.希望能帮助大家理解这个问题. 这是个理论问题,我们先从NAT讲起:NAT有 ...

  5. netty基础篇

    什么是Bio? 当客户端数量过多时,创建的线程会越来越多,最终服务挂掉,因为客户端的线程数量和服务端创建的线程数量是一一对应的. 什么是伪异步IO? 什么是Nio? 什么是Aio

  6. C++面试集锦( 面试被问到的问题 )

    1. C 和 C++ 区别 2. const 有什么用途     主要有三点: 1:定义只读变量,即常量 2:修饰函数的参数和函数的返回值 3: 修饰函数的定义体,这里的函数为类的成员函数,被cons ...

  7. Spark记录-Spark-Shell客户端操作读取Hive数据

    1.拷贝hive-site.xml到spark/conf下,拷贝mysql-connector-java-xxx-bin.jar到hive/lib下 2.开启hive元数据服务:hive  --ser ...

  8. IdeaVim-常用操作

    IdeaVim简介 IdeaVim是IntelliJ IDEA的一款插件,他提高了我们写代码的速度,对代码的跳转,查找也很友好. 安装位置 安装之后它在 Tools > Vim Emulator ...

  9. Centos7系统初始化脚本

    前言: 因公司业务增加,陆续新增服务器,时不时的来几台,手动地一台台对服务器初始化操作感觉太麻烦. 于是乎,根据初始化需求整合了一个初始化脚本,实现批量脚本初始化操作. 说明: 本脚本根据自身需求编写 ...

  10. 转--python 黑魔法2

    Python 高效编程小技巧 个人博客:临风|刀背藏身 Python 一直被我拿来写算法题,小程序,因为他使用起来太方便了,各种niubi闪闪的技能点也在写算法的过程中逐渐被挖掘到,感谢万能的谷哥度娘 ...