小白问题,github有那么多仓库,每个仓库每个提交都有历史版本,这个量级应该是很大的吧,这个是怎么存储的?
这个得看 git 而不是 github。github 是提供了 git 仓库和配套服务的一个社交/协作平台。
github 的历史版本当然是用 git 的方式存储的。至于 git 是怎么存储的,看 ProGit 就可以了。
至于 github 是怎么存储如此多的 git 仓库的,我也不知道。不过你首先说清楚,你想问的到底是哪个?
也许可以看下 [1]: http://marklodato.github.io/visual-git-guide/index-zh-cn.html
我理解的就是文件树的管理。。
你以为都是存在数据库的?git 会将每次操作都存在文件夹 .git
内的,版本控制这部分 git 已经做的差不多了,实际上并不需要 Github 去多做些什么,Github 管理仓库的话你也可以变相的认为就是在管理那些文件而已。如果还不是很明白的话,自己搭建一下 GitLab 就应该会很清楚了。