【问题标题】:Is Rsyncing git repo good enough backup solution?Rsyncing git repo 是否足够好的备份解决方案?
【发布时间】:2012-03-09 06:08:31
【问题描述】:

我经常将笔记本电脑备份到外置硬盘。 rsyncing git repos 是否优于足够好的备份解决方案,或者这种方法有什么问题?

【问题讨论】:

  • 如果您需要私有存储库并将其用作备份,您可以使用诸如 bitbucket 之类的东西...
  • @three 关于我的源代码,我不信任第三方
  • 好吧,然后将其同步到本地硬盘驱动器。确保万一发生火灾,外部硬盘驱动器也没有被破坏。
  • 顺便说一下,请参阅stackoverflow.com/questions/13713101/…,了解有关处理构建产品等忽略文件的信息。

标签: git backup rsync


【解决方案1】:

rsync 是一个很好的解决方案。在进行备份之前运行git gcgit repack(不带任何参数)可能是个好主意;这可能会显着减少文件数量,并增加下次数据变化不大的机会。两者都不会丢失任何数据。

请参阅 http://sethrobertson.github.com/GitBestPractices/#backups,了解为什么使用 git 执行此操作不是一个好的解决方案。

【讨论】:

  • 使用rsync(或tar 或其他)与git clone 相比的巨大优势:clone 不会克隆本地内容,例如存储。
【解决方案2】:

如果您真的想备份所有内容(包括挂钩和私有文件),rsync 会很有趣。
然而:

  • 它不能保证你的 repo 同步后的完整性(即 git 是否仍在 rsync'ed repo 中工作?)
  • 数据损坏的可能性更高(您必须保存很多很多文件)

更好(和更清洁)的解决方案是使用 git bundle(本质上是一个被视为 one 文件的 bar 存储库)。
您更新本地包,并将其保存到远程媒体。
除了这一次,您只需“rsync”(实际上一个简单的副本就足够了)一个文件
您可以直接从该文件中克隆或拉取该文件包。

【讨论】:

  • @Ale 捆绑包可以是增量的:这仍然是一个文件,但要小得多。
【解决方案3】:

我有一个我一直在托管的 repo,我推送到它。如果我想在某个地方工作,我克隆它,完成后将更改推回。

你也可以 rsync 它,但我发现克隆一个 repo 然后将它用作我的主要开发点更容易。我认为使用一种工具可能更容易,但你的里程可能会有所不同。

【讨论】:

  • 他是在询问是否要进行备份,而不是使用 repo!?
猜你喜欢
  • 2011-01-28
  • 1970-01-01
  • 1970-01-01
  • 2017-01-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-07-20
相关资源
最近更新 更多