Hi Hugo,
On 11 Jun 2021, at 17:39, Hugo V.C.
wrote: [..] repo init -u https://github.com/SEL4PROJ/sel4webserver-manifest.git repo sync but when I go to the "/projects/webserver/lighttpd" directory and check the content of local "lighttpd.sh" I see different (old) content than what you can see via web interface here:
https://github.com/seL4/sel4webserver/blob/master/lighttpd/lighttpd.sh
Specifically, via web interface I can see the recent commit:
https://github.com/seL4/sel4webserver/commit/6a98bdcb2be6ffc693325bbb48df9d6...
but in my local copy of the file I can't see the changes.
The default.xml manifest in sel4webserver-manifest points to specific hashes instead of branches (for some manifest repos we have set up both, sel4webserver seems to have only specific hashes). The current default.xml (updated 41min ago) does point to 6a98bd (head of master) of sel4webserver, but the one before that points to the previous revision of sel4webserver (63c9343), and your `repo sync` had probably picked up that one. The version gets updated automatically by CI whenever the tests pass, so that the manifest should always point to a consistent collection of repository versions that work together. But CI takes a while to run and/or might not have passed because of a failure in another repository in the manifest, so it can take hours or sometimes even days to catch up to the head of the master branch. That doesn't need to slow down development (see below), but it might give you something that lags a bit behind.
Is it due to come kind of cache issue of Git...? Does it require some time to be synced what you see via web interface and what you get downloaded via CLI? Am I doing something wrong?
You're not doing anything wrong, it's that the default is not set up for development. It's more for "give me the latest known-good version combination".
For development, where you usually want to work on the latest version of a specific repo + latest known good combination of everything else, you would after "repo sync" usually go into that specific repo and check out the branch you want to work on. There are many ways, I usually do something like this:
...
repo sync
cd sel4webserver
git checkout master
git checkout -b new-feature-branch
...
Thank you in advance and sorry for this newbie like question.
No worries, `repo` is its own kind of specialness. Slightly less pain that git submodules, but still.. Cheers, Gerwin