专栏首页测试之路什么是 Git、Github?
原创

什么是 Git、Github?

前言

Git 和 GitHub 是软件开发人员必不可少的工具,但是你知道它们是什么吗?为什么了解和使用 Git 和 GitHub 对于开发人员很重要?这个系列,我会从最基础的概念出发,并结合实际操作,使你能够对 Git 和 GitHub 有更清晰的认识。

Git 与 GitHub

一些初次接触 Git 和 GitHub 的从业者常常将 Git 和 GitHub 二者混淆而谈。二者虽然联系甚紧,但从本质上是两个不同的概念。

Git 和 GitHub 是一样的吗?如果不是,它们之间有什么联系和区别呢?这些问题绝对值得提出来。毕竟,微软愿意斥资75 亿美元在2018年收购GitHub,不同技能水平的开发人员都应该了解它们。为了回答这个问题,我将一个一个介绍。但是在开始之前,让我们首先讨论 版本控制 的概念。

版本控制系统(Version Control System)

通常,要创建能够按预期方式实际工作的东西,需要进行大量的尝试,错误和更正。不管你是不是工程师,只要你是电脑工作者,你每天的工作可能都是每天新增、编辑、修改许多文件。那就是版本控制体现作用的地方了。

而所谓的「版本控制系统」,就是指会帮你记录这些所有的状态变化,并且可以像搭乘时光机一样,随时切换到过去某个「版本」时候的状态。通过这样的系统,可以清楚的记录每个文件是谁在什么时候加进来、什么时候被修改或删除。

什么是 Git ?

在这里插入图片描述

Git 最早于 2005 年开发,是目前业界最流行的版本控制系统,没有之一。它是许多引人注目的项目的核心。Git 是在本地系统(而不是云)中安装和维护的,并提供了正在进行的版本的独立记录。它可以完全用于任何云托管服务,甚至不需要 Internet 接入,只需下载即可。

与其他版本控制系统相比,Git 响应迅速,易于使用且价格便宜(实际上是免费的)。Git还经过专门设计,可与文本文件配合使用。但是真正使 Git 与众不同的一件事是它的分支模型,分支允许你在代码中创建独立的本地分支。这意味着你可以尝试新的想法,为生产环境预留分支,跳回到较早的分支,合并和重新调用分支。

Git就是一个高质量的版本控制系统。那 Github 呢 ?

什么是 GitHub?

在这里插入图片描述

GitHub,于2008年开发,是一个代码托管云服务网站。Git 可以解决许多团队的重要问题,但是 Git 本身通常很难使用,所以Github 出现了。GitHub 在 Git 之上添加了许多协作和探索工具,以帮助个人和团队提高工作效率。

「Git代码托管云服务」 到底是什么?其实就是一个在线数据库,可让你在本地计算机/服务器外部跟踪并共享 Git 版本控制项目。与 Git 不同,GitHub 仅基于云, 是一种营利性服务(微软收购后针对个人免费账号开放了无限私有仓库的功能)。

除了提供 Git 的所有功能和优点之外,GitHub 还提供了一个非常直观,以图形表示的用户界面,并为程序员提供了内置的控制和任务管理工具。而且由于 GitHub 是基于云的,因此任何授权人员都可以从世界任何地方的任何计算机远程访问个人的 Git 存储库(只要它具有 Internet 连接)。

通过 GitHub,您可以与他人共享你的代码,从而使他们能够在各个Git分支上进行修订或编辑。这样,整个团队就可以在单个项目上实时协调在一起。引入更改后,将创建新的分支,从而使团队可以继续修改代码而不会覆盖彼此的工作。

最后

简而言之,**Git 是一个工具,Github 是一个网站。**

Git 是一个版本控制系统,可让你管理和跟踪源代码历史记录。GitHub 是基于云的托管服务,可让你管理 Git 存储库。如果你有使用 Git 的开源项目,那么 GitHub 旨在帮助你更好地管理它们。

后面我也会介绍如何使用 GitHub 与其它人共同协作,虽然 GitHub 很好用,但别忘了 Git 才是本体哦。

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 下载并安装Git

    上篇 我们学习了什么是 Git 和 Github,回顾一下,Git 是一个工具,用来做版本控制,Github 是一个网站,基于云托管我们的代码,可以进行版本管理...

    Sharonyao
  • 5 分钟,带你了解MVP(最低可行性产品)

    如果你从事产品管理,产品开发或仅从事技术或软件方面的工作,不知道 MVP 这个词,可不行。很久之前就有看到过简单介绍,但一直没有去深入思考,我也没彻底搞懂它到底...

    Sharonyao
  • 软件测试入门,原来这么简单

    人非圣贤,孰能无过。每个组织的最终目标都有其自己的一套期望。对于某些企业而言,成功的实际结果与预期结果相匹配的频率很高,这表明了成功。但是,在达到最终目标之前,...

    Sharonyao
  • 一份你女朋友都能读懂的 Git 教程,还不赶紧学起来!

    从刚接触电脑时的打字练习软件 金山打字通,到程序猿写代码的利器 Vim 都有小游戏(金山打字通游戏、VIM Adventures)来帮助我们入门。

    iMike
  • 寓教于乐,用玩游戏的方式学习 Git!

    从刚接触电脑时的打字练习软件 金山打字通,到程序猿写代码的利器 Vim 都有小游戏(金山打字通游戏、VIM Adventures)来帮助我们入门。

    Rocky0429
  • 寓教于乐,用玩游戏的方式学习 Git!

    从刚接触电脑时的打字练习软件 金山打字通,到程序猿写代码的利器 Vim 都有小游戏(金山打字通游戏、VIM Adventures)来帮助我们入门。

    五分钟学算法
  • 【工具】Git GUI推荐,图形化交互让你轻松存Github

    没有哪一个学编程的人不知道Git,但对于初学者而言,Git这种跟一大堆命令行联系在一起的东西,可并没有那么亲切友好易上手。

    昱良
  • 零代码入门GitHub,图形化交互让你轻松存代码 | 附Git GUI推荐

    没有哪一个学编程的人不知道Git,但对于初学者而言,Git这种跟一大堆命令行联系在一起的东西,可并没有那么亲切友好易上手。

    量子位
  • 为什么人人都需要学习Git?

    先来说说 Git 的由来,Git 是一个版本控制软件,最初是由 Linux 之父——林纳斯·托瓦兹 为了更好的管理 Linux 内核代码而编写的。当时 林纳斯 ...

    Wizey
  • 一些关于Git的学习资源

    Git是什么? Git是目前这个星球上最厉害的分布式版本控制系统。 Git有什么特点? 一句话描述:只要你用过它,你就一定会爱上它的,而且是爱不释手的那种,因...

    爱吃西瓜的番茄酱

扫码关注云+社区

领取腾讯云代金券