Git的远程存储库备份脚本

时间:2015-08-06 04:51:13

标签: git

我已经在git上移动了我的源代码控制,现在我想定期备份我的远程存储库。任何人都可以帮助我使用批处理脚本在GIT上备份远程存储库吗?

2 个答案:

答案 0 :(得分:0)

假设您将存储库创建为git init --bare - 您需要做的就是备份它,就是定期备份该目录。与备份任何其他目录的方式相同。

或者,您可以创建一个脚本,每隔X次将存储库克隆到不同的位置。

答案 1 :(得分:0)

git存储库的备份通常只是另一个git存储库。您最初可以使用git clone --mirror

进行设置
  

- 镜

     

设置源存储库的镜像。这意味着--bare。与--bare相比,--mirror不仅将源的本地分支映射到目标的本地分支,它还映射所有引用(包括远程跟踪分支,注释等)并设置refspec配置,如所有这些引用都被目标存储库中的git remote update覆盖。

根据上述和this SO question,只需在目标(备份)存储库上运行git remote update即可进行进一步更新。

虽然您也可以使用scprsync进行简单的目录备份,但克隆存储库允许git确定需要发送哪些对象,而文件系统工具(或其他git-naive选项) )可能需要重新哈希并比较更多状态。