Git 是一个被广泛使用的版本控制系统,但在规模扩展上有些不尽如人意。随着项目和代码库的增长,其性能也会受到很大的影响,一个常见的小任务,都有可能耗费数小时去执行。不过今天,微软已经给出了解决这个问题的答案 —— Git 虚拟文件系统。GVFS 的诞生,源于微软自身的 Git 使用体验。Windows 代码库的庞大规模,意味着一个简单的操作(比如检验)都可能花费 3 个小时或以上。
图片来自 Twitter 网友 Ittai Zeidman(@ittaiz)
“GVFS”中的“V”字,表明其解决方案是一套在文件系统级别上运行的虚拟化系统,这样可以节省遍历所有文件的下载时间。
由于这是一个文件系统级的解决方案,所以我们无需改动集成开发环境(IDE)或构建新的工具,这是开发者们最喜闻乐见的事情了。
GabeAul:我们将 SCM 迁移到了 Git,并且引入了新技术。
虚拟系统意味着不用下载整个代码树,运气好的话,只需下载和克隆 100 KB 的数据;检查和获取状态的操作也只需极少量的时间即可完成。
值得一提的是,微软选择了将客户端代码开源,并且会持续改进其性能,感兴趣的网友可以移步至该项目的 GitHub 页面了解更多细节。