携手创作,共同成长!这是我参与「掘金日新计划 · 8 月更文挑战」的第1天,点击查看活动详情
什么是Git、GitHub
Git简介
Git 是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。
Linus在1991年创建了开源的Linux,从此,Linux系统不断发展,已经成为最大的服务器系统软件了。 在2002年以前,世界各地的志愿者把源代码文件通过diff的方式发给Linus,然后由Linus本人通过手工方式合并代码! 到了2002年,Linux系统已经发展了十年了,代码库之大让Linus很难继续通过手工方式管理了,社区的弟兄们也对这种方式表达了强烈不满,于是Linus选择了一个商业的版本控制系统BitKeeper,BitKeeper的东家BitMover公司出于人道主义精神,授权Linux社区免费使用这个版本控制系统。 在 2005 年,BitKeeper 所在公司发现 Linux 社区有人企图破解它,BitKeeper 决定收回 Linux 社区的免费使用权。 于是Linus花了两周时间自己用C写了一个分布式版本控制系统,这就是Git!
GitHub简介
GitHub是一个面向开源及私有软件项目的托管平台,因为只支持Git作为唯一的版本库格式进行托管,故名GitHub。
2007 年旧金山三个年轻人觉得 Git 是个好东西,就搞了一个公司名字叫 GitHub,第二年上线了使用 Ruby 编写的同名网站 GitHub,这是一个基于 Git 的免费代码托管网站(有付费服务)。十年间,该网站迅速蹿红,击败了实力雄厚的 Google Code,成为全世界最受欢迎的代码托管网站。2018 年 6 月,GitHub 被财大气粗的 Microsoft 收购。2019 年 1 月 GitHub 宣布用户可以免费创建私有仓库。根据 2018 年 10 月的 GitHub 年度报告显示,目前有 3100 万开发者创建了 9600 万个项目仓库,有 210 万企业入驻。
Git 和 SVN 的区别
SVN是subversion的缩写,是一个开放源代码的版本控制系统,通过采用分支管理系统的高效管理,简而言之就是用于多个人共同开发同一个项目,实现共享资源,实现最终集中式的管理。
| Git | SVN |
|---|---|
| 它是一个分布式版本控制系统。 | 它是一个集中的版本控制系统 |
| Git是一个SCM(源代码管理)。 | SVN是版本控制. |
| Git有一个克隆的仓库。 | SVN没有一个克隆的版本库. |
| Git分支的工作方式很熟悉。Git系统有助于快速合并文件,也能帮助找到未合并的文件。 | SVN 分支是存在于版本库中的一个文件夹。合并分支时需要一些特殊的命令. |
| Git没有一个全局修订号。 | SVN有一个全局修订号. |
| Git有加密的哈希内容,以保护内容不会因为网络问题或磁盘故障而导致存储库损坏。 | SVN没有任何加密散列的内容. |
| Git存储的内容是元数据。 | SVN将内容存储为文件. |
| Git比SVN有更多的内容保护。 | SVN的内容不如Git安全. |
| Linus Torvalds为Linux内核开发了git | CollabNet, Inc开发的SVN. |
| Git是在GNU(通用公共许可证)下发布的. | SVN是在开放源码许可证下发布的. |
Git 安装配置
在使用Git前我们需要先安装 Git,目前支持 Linux/Unix、Solaris、Mac和 Windows 平台上运行。
Git 各平台安装包下载地址为:Git。
访问华为云镜像安装Git(windows )
通过Homebrew 安装Git(Mac)
Homebrew是用来使软件的安装更直接的。如果我们已经在OS X上安装了Homebrew来管理软件包,那么按照下面的步骤来进行Git。