【问题标题】:How to resume repo sync如何恢复 repo 同步
【发布时间】:2011-02-25 14:44:11
【问题描述】:

谁能提一下如何恢复同步命令?

我按照以下步骤操作: $ repo init -u git://git.omapzoom.org/platform/omapmanifest.git -b eclair $ 回购同步

同步耗时超过 6 小时,由于带宽不足,我不得不自己终止同步。有什么方法可以从上一个会话恢复同步?我可以看到创建了以下文件夹:

仿生.git 可引导 构建.git cts.git 还有更多......

我每天只能使用 6 小时的免费带宽,我必须在这段时间内进行同步。 非常感谢任何帮助。

【问题讨论】:

    标签: android repository


    【解决方案1】:

    一个“repo”由 176 个“项目”组成,其中一些非常大(>100k 个对象) 如果某些项目已完全下载,但其他项目未完全下载,您只能恢复同步。 但您无法恢复一个大项目的中断同步。这是一个 Git 手动引用:

    克隆大型存储库时(例如 作为 KDE、Open Office、Linux 内核) 目前没有办法重启 一个被打断的克隆。可能需要 相当长的时间为用户 小管道下载完 数据,以及如果克隆被中断 在用户当前需要的中间 从头开始 再试一次。对于某些用户来说,这可能 使得无法克隆大 存储库。

    所以,如果您真的想将这些文件传输到您的机器上 - 您最好从网络中访问一些 shell,在那里传输文件,然后使用一些可重新启动的方法同步您的本地 PC 和远程 shell,比如 RSync。

    甚至可以将所有内容远程压缩到一个大存档中,然后使用您最喜欢的下载管理器将其下载到您的计算机上。

    【讨论】:

      【解决方案2】:

      如上所述,repo 用于管理几个较小的项目(其中一些非常大)。但是您不必重新下载已经下载完成的项目。但是,您必须重新启动正在下载的项目。

      只需输入:

      repo sync
      

      再次,它将检查您已下载的项目是否有任何更新,如果有,请下载它们,然后从下一个下载的项目开始。如果单个项目的下载时间超过了您分配的下载时间(听起来像是 6 小时),您将需要找到更快/不同的连接来下载它。

      【讨论】:

        【解决方案3】:

        您的一个选择是一次同步一个或两个项目。

        repo sync Proj1 Proj2
        

        通过这种方式,您可以控制要同步的内容以及是否已完全同步。要获取项目的完整列表,请浏览 .git 目录并手动对每个项目执行 repo sync

        【讨论】:

        • 欢迎来到 Stack Overflow!请阅读the FAQ。我已经删除了您答案的问题部分 - 您可以将其作为您自己的问题提出。
        【解决方案4】:

        我遇到了同样的问题,所以我创建了一个脚本,完全按照之前所说的做,一次下载 1 个项目,直到全部完成。

        无需解释,您只需执行 repo init,然后在创建 .repo 的文件夹中运行此脚本。

        它将下载所有项目并创建一个记录每个项目状态的日志。

        如果发生错误,将被记录。

        如果您再次运行该脚本,它将读取日志文件并首先尝试下载“错误”项目。

        请看: http://shellswissknife.blogspot.com/2013/03/long-repo-sync.html

        【讨论】:

          猜你喜欢
          • 2019-09-20
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多