如何为特定存储库获取Gitlab备份

3

我使用了以下命令来进行备份:

gitlab-rake gitlab:backup:create 

该命令的问题在于,它备份了当前存在的所有存储库,而我并不想这样做。

比如说,我有针对A项目和B项目的存储库,我只希望备份A项目下的所有存储库。

你有什么办法可以实现这个需求吗?

2个回答

0

GitLab 16.2 (2023年7月)应该会有所帮助:

备份功能增加了跳过项目的能力。 内置的备份和恢复工具增加了跳过特定存储库的功能。 现在,Rake任务接受一个逗号分隔的组或项目路径列表,以便在备份或恢复过程中跳过它们,使用新的SKIP_REPOSITORIES_PATHS环境变量。 这将允许您跳过一些不会随时间变化的陈旧或归档项目,从而节省 a) 通过加快备份运行时间, b) 不将这些数据包含在备份文件中,从而节省空间。
感谢Yuri Konotopov对此社区贡献的支持! 请参阅文档问题

-2
备份单个仓库,您应该使用客户端方法:
git clone Url0fProjectA

对于您的项目的gitlab元数据,您还可以使用客户端的gitlab API进行获取。
有关更多gitlab API的信息,请访问您的https://gitlburl/help/api/README.md

你们组织尝试过“克隆和恢复”方法吗?在需要的时候,它是否有助于恢复?我对恢复部分表示怀疑,因为克隆只是简单地复制了git仓库。API执行会进一步复杂化事情。我发现“rake”机制很高效,但不确定需要添加哪些过滤器来跳过其他不必要的仓库。 - genius_monkey
gitlab的Rake支持备份实例的不同类型数据,但不过滤特殊重启。更多信息请查看您的gitlab帮助文档:help/raketasks/backup_restore.md - Orange

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接