我已经在git上移动了我的源代码控制,现在我想定期备份我的远程存储库。任何人都可以帮助我使用批处理脚本在GIT上备份远程存储库吗?
答案 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
即可进行进一步更新。
虽然您也可以使用scp
或rsync
进行简单的目录备份,但克隆存储库允许git确定需要发送哪些对象,而文件系统工具(或其他git-naive选项) )可能需要重新哈希并比较更多状态。