Git 与 GitHub 简介

Git 与 GitHub 的来历

Linux 之父 Linus 在 1991 年建立开源的 Linux 操做系统以后,多年来依靠全世界广大热心志愿者的共同建设,通过长足发展,现已成为世界上最大的服务器系统。系统建立之初,代码贡献者将源码文件发送给 Linus,由其手动合并。这种方式维持多年后,代码量已经庞大到人工合并难觉得继,因而深恶集中式版本控制系统的 Linus 选择了一个分布式商业版本控制系统 BitKeeper,不过 Linux 社区的建设者们能够无偿使用它。BitKeeper 改变了 Linus 对版本控制的认识,同时 Linus 发现 BitKeeper 有一些不足,并且有个关键性的问题使之不能被普遍使用,就是不开源。git

在 2005 年,BitKeeper 所在公司发现 Linux 社区有人企图破解它,BitKeeper 决定收回 Linux 社区的无偿使用权。Linus 对此事调节数周无果,找遍了当时已知的各类版本控制系统,没有一个看上眼的,一怒之下决定本身搞一个。Linus 花了十天时间用 C 语言写好了一个开源的版本控制系统,就是著名的 Git。github

2007 年旧金山三个年轻人以为 Git 是个好东西,就搞了一个公司名字叫 GitHub,第二年上线了使用 Ruby 编写的同名网站 GitHub,这是一个基于 Git 的免费代码托管网站(有付费服务)。十年间,该网站迅速蹿红,击败了实力雄厚的 Google Code,成为全世界最受欢迎的代码托管网站。2018 年 6 月,GitHub 被财大气粗的 Microsoft 收购。2019 年 1 月 GitHub 宣布用户能够免费建立私有仓库。根据 2018 年 10 月的 GitHub 年度报告显示,目前有 3100 万开发者建立了 9600 万个项目仓库,有 210 万企业入驻。服务器

在 GitHub 上建立仓库

首先,打开 GitHub 注册我的帐户并登陆。登陆后,在我的主页的右上角点击 New repository 建立新的仓库:分布式

打开页面以下图所示,填入相关信息。注意下图紫色框中有两个下拉按钮,左边的用来选择忽略文件,右边的用来选择所属协议,这两项能够不选,后面会讲到。网站

点击绿色按钮建立新的仓库,成功后自动跳转到新建仓库的主页面,以下图所示:操作系统

安装 Git

接下来,尝试使用这个仓库。命令行

首先到 Git 官网下载客户端,Windows 用户默认下一步进行安装,安装好以后,开始菜单里会有一个 Git Bash,点击打开3d

打开后相似于一个命令行窗口,使用 git --version 命令能够查看安装的版本信息。版本控制

克隆 GitHub 上的仓库到本地

如今克隆前面在 GitHub 上建立的仓库,使用 git clone + [仓库地址] 命令便可,这是标准的克隆仓库命令。code

点击下图绿色按钮,再点击紫色框中的按钮便可复制仓库地址。

克隆仓库到本地:

进入仓库主目录,以下图所示,仓库主目录中有个 .git 隐藏目录,它里面包含了仓库的所有信息,删掉这个目录,仓库就变成普通的目录了。进入到仓库目录中,命令行发生了一些变化,出现了蓝青色的 master ,它就是当前所在的分支名:

当咱们在 GitHub 上建立一个仓库时,同时生成了仓库的默认主机名 origin,并建立了默认分支 master。GitHub 能够当作是免费的 Git 服务器,在 GitHub 上建立仓库,会自动生成一个仓库地址,主机就是指代这个仓库,主机名就等于这个仓库地址。克隆一个 GitHub 仓库(也叫远程仓库)到本地,本地仓库则会自动关联到这个远程仓库,执行 git remote -v 命令能够查看本地仓库所关联的远程仓库信息:

Git 要求对本地仓库关联的每一个远程主机都必须指定一个主机名(默认为 origin),用于本地仓库识别本身关联的主机,git remote 命令就用于管理本地仓库所关联的主机,一个本地仓库能够关联任意多个主机(即远程仓库)。

克隆远程仓库到本地时,还可使用 -o 选项修改主机名,在地址后面加上一个字段做为本地仓库的主目录名,举例以下:

另外一个在其它 Git 教程中常见的命令 git init ,它会把当前所在目录变成一个本地仓库,由于有 GitHub 的存在,这个命令在咱们的生产生活中用到的次数不多。操做截图以下: