Git---基本原理

  • 工作方式:

    Git 并不保存这些前后变化的差异数据。实际上,Git 更像是把变化的文件作快照后,记录在一个微型的文件系统中。每次提交更新时,它会纵览一遍所有文件的指纹信息并对文件作一快照,然后保存一个指向这次快照的索引。为提高性能,若文件没有变化,Git 不会再次保存,而只对上次保存的快照作一链接。

  • Git 的工作方式如图所示:

image.png
  • 优势:

    1.在 Git 中的绝大多数操作都只需要访问本地文件和资源,不用连网。
    2.本地就是一个完整的代码仓库,可独立工作。
    3.由于代码是分布式,即使服务器磁盘故障也不会丢代码。
    4.历史修改该记录可完整保存。
  • Git三种状态

    1.已修改(modified):已修改表示修改了文件,但还没保存到数据库中。
    2.已暂存(staged):已暂存表示对一个已修改文件的当前版本做了标记,使之包含在下次提交的快照中。
    3.已提交(committed):已提交表示数据已经安全的保存在本地数据库中。

  • 基本的 Git 工作流程如下:

    1.在工作目录中修改文件。
    2.暂存文件,将文件的快照放入暂存区域。
    3.提交更新,找到暂存区域的文件,将快照永久性存储到 Git 仓库目录。


    image.png
  • 工作区、暂存区、版本库

    1.工作区:简单理解就是需要进行版本的某个文件夹(假设为demo),这个文件夹有一些特殊之处——多了.git这个隐藏的文件夹。
    2.暂存区:暂存区可以理解为一个虚拟工作区,这个虚拟工作区会跟踪工作区的文件变化(增删改等操作)。这个工作区的位于.git文件夹下的index目录下。
    3.版本库:demo文件夹下的.git文件夹就是版本库。

    需要理解一点:
    当需要对工作区的修改提交到版本库前,暂存区会与工作区进行差异比较,如果工作区与暂存区的文件不一致,那么需要同步工作区的修改到暂存区,然后才可以提交到版本库。从这个意义讲,暂存区可以说是工作区和版本库的桥梁。好处自然是可以在真正提交到版本库之前做任意的操作,在需要真正提交的时候push到版本库。

  • 下面通过一张图理解为工作区、暂存区和版本库的关系:

    image.png
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 1.git的安装 1.1 在Windows上安装Git msysgit是Windows版的Git,从https:/...
    落魂灬阅读 12,880评论 4 54
  • 既然人生的幕布已经拉开,就一定要积极的演出;既然脚步已经跨出,风雨坎坷也不能退步;既然我已把希望播在这里,就...
    胡玉梅阅读 105评论 0 0
  • Unity 那边天天帮他们找坑,如何拿到 Unity 所占用的内存,反正 iOS 是没有拿到正确过,一般偏小很多,...
    Dosun阅读 699评论 0 1
  • 在这个地下室里 我在构建 构建我的防空洞 在诗的空间里徜徉 有时 我是一阵风 来去匆匆 然 我更愿如一缕春风 不那...
    梅香透雪阅读 487评论 0 1

友情链接更多精彩内容