备份git时是否存在并发问题?

时间:2009-09-28 21:45:58

标签: git

我见过很多人说你可以通过复制它们来备份git存储库,但是如果你在某人正在推动某些更改的同时复制存储库会发生什么呢?

4 个答案:

答案 0 :(得分:5)

基本上会发生的事情是,您将在复制时获得完整的回购。如果在复制时推送部分事务处于暂停状态,则它将被清除为失败的事务,就像您在推送到远程存储库时丢失网络连接一样。

答案 1 :(得分:3)

如果您担心并发性,那么使用

应该是非常安全的

git clone / my / repository / location / my / backup / location

由于每个git存储库都包含所有内容的完整副本,因此它是一个有效的备份 保证(至少和git本身一样多!)是并发安全的

答案 2 :(得分:1)

不,git的中央数据存储是原子的,按设计。

你不能以这种方式丢失提交,只是参考。

如果你失去裁判,他们很容易恢复。

答案 3 :(得分:0)

如果复制花费很长时间,可能会出现问题,如果你以某种方式首先复制对象数据库,然后引用,而有人正在更新引用(这就是为什么rsync://传输是不建议使用)。我想如果先复制refs然后再复制对象数据库(以及其他对象),你应该没有任何问题。