Update Source Code

Relevance

This is relevant to those with access to the private GitHub repositories.

Use of Submodules

While using a git submodule complicates updates, the benefits outweigh the disadvantages when updates are managed correctly.

A submodule HEAD is initially detached, ledglive_react_client is a submodule of ledglive_server

The following information is incomplete and will be expanded after tests.

TBD here means ‘To Be Documented’

To keep local changes when HEAD is detached

For example if you made some changes to ledglive_react_client as a submodule with detached HEAD

git branch tmp
git checkout main

To update local repositories from GitHub

cd ledglive_server
git pull # or git pull --rebase
cd ledglive_react_client
#git checkout main # if HEAD not attached yet
git pull # or git pull --rebase

To update local repositories from GitHub with submodule command

cd ledglive_server
git pull # or git pull --rebase
git submodule update --remote --merge # --merge only works if HEAD is not detached, without --merge only pulls the commit registered with ledglive_server

To setup a GitHub fork with ledglive as upstream

TBD

To update a GitHub fork with LedgLive as upstream and save changes to fork

TBD

To make a PR (pull request) through a GitHub fork to LedgLive as upstream

TBD