前言

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 才是本体哦。

什么是 Git、Github?相关推荐

  1. git github 快速入门

    本节内容 github介绍 安装 仓库创建& 提交代码 代码回滚 工作区和暂存区 撤销修改 删除操作 远程仓库 分支管理 多人协作 github使用 忽略特殊文件.gitignore 为什么要 ...

  2. [Git/Github] ubuntu 14.0 下github 配置

    转载自:http://www.faceye.net/search/77573.html 一:创建Repositories 1:首先在github下创建一个帐号.这个不用多说,然后创建一个Reposit ...

  3. android 共享代码,Android团队成员间的代码共享!(Git+Github版)

    原创,转载请说明出处. 一. 这篇文章要解决什么问题,能学习到什么? 在android团队的开发中,少不了与队员之间的合作.为了避免我们傻瓜式地复制粘贴对方的负责的那部分功能代码,我们可以用svn或者 ...

  4. git 可视化工具_最值得推荐的8个git/github项目数据分析工具

    何重要的决定都应基于数据,对于信息项目和软件开发亦是如此.如果你不仔细查看描述项目演进的数据就无法了解项目的健康状况,并给出合理的改进措施.为了分析和挖掘这些信息,我们可以从Git存储库和项目所在的代 ...

  5. git/github 生成密钥

    一 .  github上创建立一个项目 用户登录后系统,在github首页,点击页面右下角"New Repository" 填写项目信息: project name: hibern ...

  6. git/github的使用

    内容最后更新时间:2018-08-10 以下内容是我在收集而来,再经过自己的经验修改而成,希望对你有用(在不断的更新中) 欢迎来到Github 初识Github 版本控制的介绍 熟练使用Git/Git ...

  7. git/github使用详解

    介绍:gitHub是一个面向开源及私有软件项目的托管平台,因为只支持git 作为唯一的版本库格式进行托管,故名gitHub. 2018年6月4日,微软宣布,通过75亿美元的股票交易收购代码托管平台Gi ...

  8. git@github.com - Permission denied publickey错误

    命令行ssh -T git@github.com, 遇到如下错误: git@github.com: Permission denied (publickey). 用户文件夹.ssh下找到文件id_rs ...

  9. git+github入门

    1.安装Git 官网下载地址:下载 2.生成ssh秘钥 ssh-keygen 中间出现提示进行设置ssh秘钥的存放地址,此处可直接回车,放到默认的存储位置/c/Users/Administrator/ ...

  10. git@github.com: Permission denied (publickey). fatal: Could not read from remote repository.

    在使用git拉取文件时说没有权限,错误如下图所示.错误原因是没有进行SSH密钥是设置. 解决方法:(linux环境下),其他环境请转到它的主页面. 1.检测是否存在ssh keys ls -al ~/ ...

最新文章

  1. php中将数据加入到文件中
  2. 六、“最是不招眼,凌波水上漂”
  3. 什么是Shell,Shell教程
  4. [BZOJ3791]作业
  5. Linux命令----cat
  6. 程序员因为一件衣服收获了爱情,真甜!
  7. 使用Jasypt加密spring boot应用配置文件的敏感信息
  8. 多线程--对象及变量的并发访问
  9. 计算机一寸照编辑教程,超简单的一寸照制作及排版教程,再也不花冤枉钱!
  10. 使用MetaHuman Creator 塑造你心中的人物
  11. 生成PayPal测试账号clientID 和 密钥
  12. WIN10 禁用 credentital guard Device Guard或Credential Guard与Workstation不兼容
  13. js海报制作操作步骤缓存思路求解?
  14. 853计算机综合基础包括什么,2017年南京农业大学853计算机专业基础综合硕士研究生参考书目...
  15. mysql最新版安装
  16. 「SQL数据分析系列」4.过滤操作
  17. 热电偶补偿导线的原理及必要性
  18. 用Canvas画漫天繁星吧~
  19. Android跳过手机App的启动广告之李跳跳使用指南
  20. EZDML批量生成spring-boot jpa swagger2 lombok后端接口

热门文章

  1. SHELL脚本之编写脚本实现调整屏幕亮度的脚本
  2. 酒店预订需求数据分析
  3. Linux新特性之btrfs文件系统
  4. 关于日语输入法及其日英切换
  5. 身份证号码、手机号码格式校验
  6. [iTyran翻译]OpenGL ES 从零开始系列08:交叉存取顶点数据
  7. L2-032 彩虹瓶(Python3)
  8. 一个经典机器学习案例——良/恶性乳腺癌肿瘤预测
  9. 【C++】C++前言
  10. IDEA编写JDBC连接MySQL