8

如果这在其他地方有所涉及,我很抱歉,但我找不到答案。

我有一个名为 bare.git 的裸仓库,它是从中克隆开发仓库的仓库。这一切都很好。

我想知道 bare.git 从哪里获取源文件。它们是否作为二进制文件存储在 bare.git 文件结构中?我可以将 bare.git 移动到另一个位置并仍然从中克隆 repos,因此源必须在某种程度上是可移植的。还是存储对文件的绝对网络引用?

我想知道这些信息的主要原因有三个:

  1. 我们需要知道要备份什么。
  2. 我的老板想知道源代码到哪里去了。
  3. 我们需要一个当前的复合版本进行测试。
4

3 回答 3

6

您的源文件作为索引的一部分存储在 bare.git 文件结构中,这与您在任何克隆中的 .git 目录中的相同。

所以,最好备份完整的bare.git。

您可以通过克隆您的裸仓库获得当前版本进行测试。

于 2010-12-22T15:22:57.670 回答
5

为什么备份所有的 repo?

请参阅Git 对象模型Git 如何存储对象

于 2010-12-22T15:22:40.337 回答
1

备份整个bare.git文件夹不要错过,你以后可以随时克隆它。

当你想测试源代码时,你需要克隆它。使用 Git 管理网站一文向您展示了一种处理问题的方法,即在每次推送到 bare.git 后检查整个 repo,当然,这是自动的。这段代码是你应该测试的(除非你想在推送到 bare.git 之前在pre-commitpre-receive中进行测试。

于 2010-12-22T15:35:07.467 回答