\chapter{Change Management}

All code changes are managed with git. Changes are written and pushed to the git server,\\ then pulled to the development server where testing is conducted. After testing, the changes are merged into the main branch and then pushed to the nodes via rsync. The nodes are independent from git.

We maintain 2 branches with occational temporary branches from time to time.

\begin{outline}
    \1 dev
        \2 This is where the majority of new work is located. Occasionally a temporary\\  sub branch is created for special projects, bug fixes or tests.
    \1 main 
        \2 This is the production branch used only for code deemed ready to be pused to the nodes.
\end{outline}
