制作我的Github和Gitlab报告的本地副本

制作我的Github和Gitlab报告的本地副本,git,github,backup,gitlab,Git,Github,Backup,Gitlab,我在Github和Gitlab云存储库中的用户下存储了许多项目 Github项目归我的Github用户所有,Gitlab项目归我的Gitlab用户所有 Guthub项目都是公共的,但是Gitlab项目是公共和私有的混合体 我注意到,我使用的是一种“鸡蛋在一个篮子里”的方法,如果Github或Gitlab药房来自互联网,他们将带走我的项目 我想知道,对于人们来说,最好的做法是如何创建他们工作的备份,如果在线服务不可用,如果需要,可以将其转换为正常运行的git回购 是否有一个脚本可以根据特定用户自动

我在Github和Gitlab云存储库中的用户下存储了许多项目

Github项目归我的Github用户所有,Gitlab项目归我的Gitlab用户所有

Guthub项目都是公共的,但是Gitlab项目是公共和私有的混合体

我注意到,我使用的是一种“鸡蛋在一个篮子里”的方法,如果Github或Gitlab药房来自互联网,他们将带走我的项目

我想知道,对于人们来说,最好的做法是如何创建他们工作的备份,如果在线服务不可用,如果需要,可以将其转换为正常运行的git回购

是否有一个脚本可以根据特定用户自动克隆所有git回购我猜它会使用API列出特定用户的所有项目,而不是发出克隆命令。 理想情况下,该脚本可以每晚运行,并且可以重新获取最近对repo的更改

克隆是最好的方法吗?提取某种zip或数据库转储是否更好

其他人做什么

作为一个附带问题,我认为我可能会在这个过程中丢失项目设置、变量、键、问题、Wiki等,但我猜备份这些内容无论如何都是无用的,因为它们将以专有格式存在,一旦Github/Gitlab消失,它们将无法使用


注意:我的Gitlab项目有自己的Gitlab CI流程,我认为这是行不通的。

我认为这个问题不适合的格式,因为答案会非常固执己见。我不认为GitHub和GitLab会一夜之间消失。如果您真的认为这是一种可能性,那么您可以自己主持一个GitLab实例。我很欣赏您的观点。这是由我在gitlab数据丢失事件后创建的待办事项列表项引发的。它没有影响我,但它让我思考。我对gitlab和github都很满意,并且都使用免费层。但作为一名程序员,这是我的全部工作,你确实希望有独立的备份,以防发生最坏的情况。虽然GitLab宕机是不幸的,但只有GitLab特有的东西丢失了(6小时的工作)。存储库未归档。正如我所说的,最好的办法可能是自己托管GitLab并在那里部署备份实践。我建议运行自己的GitLab实例并配置常规备份。你有完全的控制权。