7

我正在尝试同步以下回购

repo init -u git://github.com/SlimRoms/platform_manifest.git -b jb

问题是我大约在 30 小时前开始了 repo 同步,但仍未完成。(我有一个 1Mbps 的连接)。我现在不想让笔记本电脑切换这么长时间,并且想暂停当前的同步并稍后恢复。

所以,我搜索了一下,发现暂停当前的下载/同步我可以使用:

  • Ctrl+C
  • Ctrl+Z
  • 关闭终端(下次会自动恢复下载)

所以我尝试使用 ctrl+c,下载停止。然后恢复我尝试了“fg”,但它没有重新开始。我得到的错误是:

bash:fg:当前:没有这样的工作

有人可以帮我吗?我可以稍后使用:关闭并继续同步吗?

回购同步

4

2 回答 2

22

您不能真正暂停a repo sync,但如果您使用 Ctrl-C 中止它,然后稍后再次运行它,它将有效地从停止的地方开始。虽然它会重新从头开始处理项目列表,并且可能仍会为已处理的项目获取一些新数据,但它应该快速浏览这些项目,因为它之前获取的所有数据仍然存在在隐藏.repo目录中。

有关该方法和工作方式的出色描述,请参见此答案。repo initrepo sync

请注意,您不会立即看到任何已获取的项目,因为repo sync在完成克隆所有 git 存储库之前不会创建和填充您的工作目录.repo/projects

于 2012-09-26T21:37:35.553 回答
1

如果您想在不挂机的情况下进行 repo 同步,可以使用:

nohup repo sync &

并退出 ssh/telnet/terminal 会话。

对于磁盘空间增加的问题,只需定期执行以下操作:

cd /path/to/repo
rm -f `find . -name '*tmp_pack*'`
于 2018-09-26T07:16:46.977 回答