[DanoR的学习笔记][Git入门][01][Git是什么?][一点都不通俗版]

Git是什么?

  • Git是一个会保存你对文件夹大部分修改的程序。

Git除了“保存”还会什么?

  • 最基本的功能除了“保存”,还有“复制”和“合并”
  • 复杂的功能大部分基于上面三种。

Git是“懒惰”的

  • Git不会主动去做什么,除非你叫它去做什么。

  • 因为Git不会主动做什么,所以你可以对你的文件夹做很多很多更改。直到你认为可以“保存”为止。

    • 我在上面的描述是“大部分修改”而不是“所有修改”
  • 每份“保存”在Git里叫做“版本”
    每份“保存”在Git里叫做“版本”(因为很重要所以说两次。)

Git是“分布式”的

  • 首先要知道,和“分布式”相对的词语是“集中式”
  • 假定你现在在一个小型网络里干活,网络里有你和几个同事,还有一台服务器
    假定你现在在一个小型网络里干活,网络里有你和几个同事,还有一台服务器

  • 如果Git是“集中式”

    • 只有服务器会拥有文件夹所有版本
    • 每次工作,你只会从服务器获得一个版本(一般是最新的,按你的需求可以获得旧的)

    • 你是被动的
      因为需要等待服务器返回版本。上传版本时,也需要等待服务器完全接收。

    • 要是服务器挂了,你和你的同事就没办法再获得其他版本
      如果这时你需要用到其他版本,你不得不停止工作等待服务器复活。(明显这样不好。)

  • 所以Git是分布式的!

    • 你、你的同事、服务器都会拥有文件夹所有版本

    • 你现在是主动的!
      因为你拥有全部版本
      所以无论你做什么,你只需从本地获得版本,而不是从服务器获得版本。

    • 你修改的版本,还必须和你的同事的版本合并
      你可以直接和同事合并。但是一旦同事多起来,这效率会明显下降

    • 所以最好还是要一台服务器作为中心,来合并所有版本,提高效率
      哪怕服务器挂了,只会令合并同事的版本变麻烦一点,而不会再停止工作
      (这就是分布式)

    原文作者:DanoR
    原文地址: https://segmentfault.com/a/1190000000479640
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞