Clone
1
How to install EVOLV for dev
renederen edited this page 2025-11-05 08:29:34 +00:00
This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

🧭 Step Plan Working with Repositories Containing Submodules

This guide explains how to work with a main repository (e.g. EVOLV) that includes several submodules, such as measurement, analytics, or reporting. Use this process when you want to make changes in your own fork while keeping compatibility with the central R&D repositories.

1 Fork the Main Repository

Fork the EVOLV repository into your own account. This can be done in Gitea under the R&D namespace.

Example:

Fork https://gitea.centraal.wbd-rd.nl/RnD/EVOLV

https://gitea.centraal.wbd-rd.nl/r.de.ren/EVOLV

2 Fork the Submodules You Need

If you plan to modify any submodules (for example measurement or analytics), fork those repositories as well. Alternatively, you can create your own submodule repository.

Example:

Fork https://gitea.centraal.wbd-rd.nl/RnD/measurement

https://gitea.centraal.wbd-rd.nl/r.de.ren/measurement

3 Clone the Main Repository (Including Submodules)

When cloning your fork, include all submodules:

git clone --recurse-submodules https://gitea.centraal.wbd-rd.nl/r.de.ren/EVOLV.git

If you already cloned without submodules:

git submodule update --init --recursive

4 Update Submodule URLs (if you Forked Them)

If youve forked any submodules, update your .gitmodules file to point to your own repositories:

[submodule "measurement"] path = measurement url = https://gitea.centraal.wbd-rd.nl/r.de.ren/measurement.git

Then run:

git submodule sync git submodule update --init --recursive

5 Work on the Code

You can now make changes in either the main repo or submodules. Commit and push your work as usual:

git add . git commit -m "Added new measurement logic" git push origin main

💡 Tip: For submodules, commit inside the submodule first, then commit the updated submodule reference in the main repo.

6 Keep Your Fork Updated

To stay up-to-date with the main R&D repository:

git remote add upstream https://gitea.centraal.wbd-rd.nl/RnD/EVOLV.git git fetch upstream git merge upstream/main git submodule update --remote

7 Create a Pull Request

When your changes are ready, open a Pull Request in Gitea to merge your work back into the central EVOLV repository.

🧩 Location: https://gitea.centraal.wbd-rd.nl/RnD/EVOLV/pulls

Summary Table Step Action Example Command 1 Fork main repo EVOLV → r.de.ren/EVOLV 2 Fork submodules measurement → r.de.ren/measurement 3 Clone with submodules git clone --recurse-submodules ... 4 Update submodule URLs Edit .gitmodules 5 Work on code git commit & git push 6 Sync with upstream git fetch upstream 7 Create PR via Gitea UI