多个 android 回购同步致命错误
multiple android repo sync fatal errors
我正在使用 repo sync
将 Lineage OS 15.1 与
同步
repo init -u https://github.com/LineageOS/android.git -b lineage-15.1
我在不同的存储库中重复出现以下错误
1:
curl: (22) The requested URL returned error: 404 Not Found
Server does not provide clone.bundle; ignoring.
2:
Cannot fetch LineageOS/android_external_lineage-sdk-api-coverage
warn: --force-broken, continuing to sync
3:
fatal: unable to access 'https://github.com/LineageOS/android_external_lineage-sdk-api-coverage/': Could not resolve host: github.com
4:
fatal: unable to access 'https://android.googlesource.com/platform/system/tpm/': gnutls_handshake() failed: The TLS connection was non-properly terminated.
5:
fatal: unable to access 'https://github.com/LineageOS/android_external_lineage-sdk-api-coverage/': gnutls_handshake() failed: Error in the pull function.
6:
fatal: unable to access 'https://android.googlesource.com/platform/external/libcap/': gnutls_handshake() failed: Error in the pull function.
7:
error: RPC failed; curl 56 GnuTLS recv error (-110): The TLS connection was non-properly terminated.
fatal: The remote end hung up unexpectedly
fatal: early EOF
fatal: index-pack failed
8:
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
9:
fatal: unable to access 'https://github.com/LineageOS/android_hardware_broadcom_libbt/': Empty reply from server
10:
fatal: unable to access 'https://gerrit.googlesource.com/git-repo/': Failed to connect to gerrit.googlesource.com port 443: Connection timed out
并且由于这些错误,repo 同步在 error: Exited sync due to fetch errors
时停止,因此我使用了 repo sync -f
(--force broken 标志),它应该可以修复网络错误(不确定)。我的回购协议仍在同步(以及错误),我不知道最后是否会得到正确的同步文件。有人可以告诉我这些错误是什么吗?为什么会发生以及如何解决?我可以看到其中一些与网络相关,但我不确定有多少。请帮我解决这些问题。
我在 SE 上搜索了一些问题,但这些错误有不同的背景并且与 repo
无关(尽管显然与 git 相关)。
我的网络速度:最大 1MBps(这就是为什么我对那些通常不应该发生的网络问题更加困惑)
我意识到高速连接是不够的,它必须高度稳定并与其速度保持一致。
这次网络更改解决了除 GnuTLS 问题之外的大部分问题。看起来 gnutls
要求我提供企业级互联网连接(我负担不起),因为它 对网络波动高度敏感 .
git config --global http.postBuffer 1048576000
方法无效。
我用 openssl
(guide) 重建了 git
,降低了波动敏感度很多(与 gnutls
相比)。
之后,剩余的错误由 运行 repo sync -f
一次又一次地修复。这不是一个很好的解决方案,但教训是 openssl
在不稳定和低带宽的情况下效果更好 (如果你调用 1- 2MBps 低带宽连接)连接。
我 运行 以下命令调整 TCP 设置并使用非并行命令。之后,我成功下载了所有源代码:
sudo sysctl -w net.ipv4.tcp_window_scaling=0
repo sync -j1
来源:https://source.android.com/setup/build/downloading#troubleshooting-network-issues
我正在使用 repo sync
将 Lineage OS 15.1 与
repo init -u https://github.com/LineageOS/android.git -b lineage-15.1
我在不同的存储库中重复出现以下错误
1:
curl: (22) The requested URL returned error: 404 Not Found
Server does not provide clone.bundle; ignoring.
2:
Cannot fetch LineageOS/android_external_lineage-sdk-api-coverage
warn: --force-broken, continuing to sync
3:
fatal: unable to access 'https://github.com/LineageOS/android_external_lineage-sdk-api-coverage/': Could not resolve host: github.com
4:
fatal: unable to access 'https://android.googlesource.com/platform/system/tpm/': gnutls_handshake() failed: The TLS connection was non-properly terminated.
5:
fatal: unable to access 'https://github.com/LineageOS/android_external_lineage-sdk-api-coverage/': gnutls_handshake() failed: Error in the pull function.
6:
fatal: unable to access 'https://android.googlesource.com/platform/external/libcap/': gnutls_handshake() failed: Error in the pull function.
7:
error: RPC failed; curl 56 GnuTLS recv error (-110): The TLS connection was non-properly terminated.
fatal: The remote end hung up unexpectedly
fatal: early EOF
fatal: index-pack failed
8:
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
9:
fatal: unable to access 'https://github.com/LineageOS/android_hardware_broadcom_libbt/': Empty reply from server
10:
fatal: unable to access 'https://gerrit.googlesource.com/git-repo/': Failed to connect to gerrit.googlesource.com port 443: Connection timed out
并且由于这些错误,repo 同步在 error: Exited sync due to fetch errors
时停止,因此我使用了 repo sync -f
(--force broken 标志),它应该可以修复网络错误(不确定)。我的回购协议仍在同步(以及错误),我不知道最后是否会得到正确的同步文件。有人可以告诉我这些错误是什么吗?为什么会发生以及如何解决?我可以看到其中一些与网络相关,但我不确定有多少。请帮我解决这些问题。
我在 SE 上搜索了一些问题,但这些错误有不同的背景并且与 repo
无关(尽管显然与 git 相关)。
我的网络速度:最大 1MBps(这就是为什么我对那些通常不应该发生的网络问题更加困惑)
我意识到高速连接是不够的,它必须高度稳定并与其速度保持一致。
这次网络更改解决了除 GnuTLS 问题之外的大部分问题。看起来 gnutls
要求我提供企业级互联网连接(我负担不起),因为它 对网络波动高度敏感 .
git config --global http.postBuffer 1048576000
方法无效。
我用 openssl
(guide) 重建了 git
,降低了波动敏感度很多(与 gnutls
相比)。
之后,剩余的错误由 运行 repo sync -f
一次又一次地修复。这不是一个很好的解决方案,但教训是 openssl
在不稳定和低带宽的情况下效果更好 (如果你调用 1- 2MBps 低带宽连接)连接。
我 运行 以下命令调整 TCP 设置并使用非并行命令。之后,我成功下载了所有源代码:
sudo sysctl -w net.ipv4.tcp_window_scaling=0
repo sync -j1
来源:https://source.android.com/setup/build/downloading#troubleshooting-network-issues