Recently I'm trying to use repo to download private android codes from vendors. They provided me with the .netrc and gitconfig like:
[protocol]I think it works because under above config, I can repo init -u https://private.xxx.yyy.cn/private_PROJECT/manifest.xml -m ABC.xml successfully but failed without above config.
However, when I repo sync -c --no-tags -j4, it will report warning:
Fetching: 0% (0/763) warming upI searched above warnings and I think maybe this warning doesn't matter but when I run repo status and current folder has only .repo but nothing else!
project art/ missing (run "repo sync")Then I checked .repo/manifests/ABC.xml:
<?xml version="1.0" encoding="UTF-8"?> <manifest> <remote fetch="ssh://git.xxx.org:9222/private_PROJECT/" name="caf" review="codeaurora.org"/>I noticed that in the manifest.xml, remote fetch pointed to original url instead of the proxy url, so I tried to update this xml with the proxy url.Then I tried to repo init & repo sync again. Before update manifest.xml cat projects/art.git/config:
[remote "caf"]After update manifest.xml cat projects/art.git/config:
[remote "caf"]It seems that it will work! Unluckily, still not work.
So I tried to just git clone url = https://xxx.yyy.cn/private_Project/platform/art or git clone ssh://git.xxx.org:9222:9222/private_Project/platform/art, I can pulled it. I also tried to repo sync platform/art -c --no-tags -j4, it can also pulled it.
But there are almost 1000 sub-project in android, I don't want to run such cmd for each sub-project or work around such as creating a script. I want to know the reason why repo sync doesn't work here.
So, can anyone help me to figure it out?