I'm working on a project which include multiple git repositories. The folder structure looks something like this;
repo1/
+
---repo2/
---repo3/
...
---repo8/
So, to setup my development environment, I would need to run something like;
git clone http://path_to_git_repo.git top_folder
cd top_folder
git checkout tags/release34
git clone http://path_to_another_repo.git subfolder1
cd subfolder1
git checkout tags/release55
cd ..
git clone http://path_to_another_repo.git subfolder2
cd subfolder2
git checkout tags/rel-44-abc
... etc
A week or so later, different teams would push their own updates/tags and I'd need to re-synchronize by doing something like this;
cd top_folder
git checkout tags/release44
cd subfolder1
git checkout tags/release-bignewfeature
cd ..
cd subfolder1
git checkout tags/release-reverting_tosomethingelse
cd ..
... etc
Doing the whole re-synchronizing is very ... repetitive and tiresome. Does anyone have any suggestions on how I could make things easier for myself?
I've heard (and tried) the mr tool, but it will only update to the latest HEAD version of a repo while I need to just be updating to certain tags.