3

我们的本地服务器上有一个 git 服务器。我想从服务器端直接复制“repositoryname.git”文件夹备份这些 git 存储库。

如果新服务器出现问题,是否可以从这些文件夹中恢复文件?我认为存储在这个 .git 文件夹上的 Object 文件夹中的文件是断裂的。并且不能从服务器直接访问。

谢谢你。

4

1 回答 1

6

为了从服务器备份裸仓库,您应该避免直接复制repositoryname.git文件夹(其中包含本地配置,包括 gitlab 挂钩),而是执行 git bundle(请参阅我对 git bundle 的回答)。

 cd repositoryname.git
 git bundle create /tmp/repositoryname.bundle --all

这将生成一个文件,您可以轻松地复制该文件,并且可以从中克隆以在另一台机器上恢复该存储库。

.git/object克隆后,将使用正确的对象重新填充文件夹。

于 2013-07-08T14:20:53.307 回答