libgit2-backend的目的是什么?

时间:2019-09-24 19:43:00

标签: libgit2

我正在尝试建立一个支持git版本控制的网站。我正在使用libgit2作为后端。但是我认为文件系统不是那么容易扩展和保证数据完整性。我注意到libgit2具有自定义后端(https://github.com/libgit2/libgit2-backends)支持,可以在其中使用数据库进行某些存储。

最初,我希望可以通过将与git相关的所有内容保存到数据库中来完全摆脱文件系统的困扰。但是,在尝试了sqlite后端之后,似乎libgit2仍需要在文件系统上生成一个.git文件夹吗?使用数据库作为后端时,可以删除.git文件夹吗?

1 个答案:

答案 0 :(得分:1)

使用libgit2建立可运行的“内存中”存储库存在一些“局限性”,即使支持“某些”内存中状态。如您所知,自定义对象数据库(.git/objects/)和refdb(.git/refs/)都有API端点,并且config子系统可以在内存中工作。但这并不是.git/中可以使用的所有其他内容的原因,因为在回购级别没有自定义点-恕我直言,这不是git,我们完全在谈论fs-时,更少-工作并没有真正朝着这个方向发展。