维护git存储库的备份

时间:2016-02-27 18:37:27

标签: git

我有一个使用git clone www.someserver.com/mygitrepo创建的git存储库。我想维护此存储库的完整源代码和历史记录的离线备份,是否足以每隔一段时间调用存储库中的git pullgit fetch?据我所知git pull应该从远程分支更新当前本地分支,git fetch应该更新其各自远程分支的所有本地分支。但git fetch是否还会下载在初始git clone电话后添加的分支?可以假设我使用此方法进行完整的最新备份吗?只需致电get fetch即可。实现完整备份的最佳方法是什么?

修改

为了澄清一点,我对获得所有分支的兴趣不大,我更感兴趣的是维护存储库的完整副本,包括标签等服务器将无法使用的事件。

1 个答案:

答案 0 :(得分:1)

不,它不会自动获取所有分支。 但你可以使用:

for remote in `git branch -r`; do git branch --track $remote; done
git fetch --all
git pull --all

来源:How to fetch all git branches

但如果您将其用作备份,则可能会出现服务器上的历史记录更改问题。 (就像已经更改的提交也将在backkup上进行更改,您可以将其设置为不执行此操作,但之后它会在您更改旧提交时停止备份)