我尝试重新同步cyanogenmod源。一直到99%阶段,但是这个阶段好像有一个大文件,而且由于我的网络连接经常断开,所以无法下载它。
每次发生断开连接时,fatal: early EOF
被打印出来,则repo sync
停止,似乎在下次运行时,它从头开始该文件,尽管之前保存了它的临时对象。
有没有办法告诉repo sync
从在特定文件中停止的位置开始下一次运行,而不是从头开始?
我尝试过夜无限循环运行存储库同步,但下载并没有结束,而是我的内存已满。
临时文件位于该文件夹下~/android/system/.repo/project-objects/CyanogenMod/android_frameworks_base.git/objects/pack
格式为:
78M tmp_pack_7JhRgA
106M tmp_pack_fprjIZ
523M tmp_pack_tydAd5
436M tmp_pack_po9dEw
780M tmp_pack_rewDSS
我还尝试在每次新的存储库同步之前删除这些临时文件,以避免内存满,但它仍然无助于结束下载。顺便说一句,删除它们似乎并不会使下一次运行从不同的点开始,因此它证实了它在下一次运行中忽略它们的怀疑。
我运行的确切存储库同步命令是repo sync -j4 -f -c
存储库初始化命令是:repo init -u https://github.com/CyanogenMod/android.git -b cm-13.0
断网后打印的错误是:
Fetching projects: 94% (497/528) Fetching project CyanogenMod/android_frameworks_opt_vcard
Fetching project CyanogenMod/android_hardware_qcom_audio00 KiB/s
Fetching projects: 96% (507/528) Fetching project CyanogenMod/android_hardware_qcom_audio00 KiB/s
Fetching project CyanogenMod/android_hardware_qcom_audio00 KiB/s 616668), 4.93 MiB | 131.00 KiB/s
Fetching project CyanogenMod/android_hardware_qcom_audio00 KiB/s 616668), 5.12 MiB | 123.00 KiB/s
Fetching project CyanogenMod/android_hardware_qcom_audio00 KiB/s
Fetching project CyanogenMod/android_hardware_qcom_audio00 KiB/s
Fetching projects: 99% (523/528) Fetching project CyanogenMod/android_hardware_qcom_audio
Fetching project CyanogenMod/android_hardware_qcom_audio00 KiB/s
error: RPC failed; curl 56 GnuTLS recv error (-54): Error in the pull function.
fatal: The remote end hung up unexpectedly
fatal: early EOF
fatal: index-pack failed