diff --git a/How-to-install-EVOLV-for-dev.md b/How-to-install-EVOLV-for-dev.md new file mode 100644 index 0000000..a34b45d --- /dev/null +++ b/How-to-install-EVOLV-for-dev.md @@ -0,0 +1,90 @@ +🧭 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 you’ve 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 \ No newline at end of file