Cloning the repository
In case there is no default given load a git module, at least
module load git/2.31.1-gcc-11.2.0
You need a directory with enough space, for example on mistral you should change the directory to
cd /work/<project_name>/<user-id>
Now clone the repository
git clone --recursive git@gitlab.dkrz.de:icon/icon-mpim.git
This command creates a local copy of the latest repository version on your disk.
Change the directory
cd icon-mpim
You are now on icon-mpim:master, which is the main development branch.
The path to the repositories of the other working groups is analogous (icon-nwp, icon-cscs, icon-dkrz…). Only the “common” repository needs a slightly different path for cloning: git@gitlab.dkrz.de:icon/icon.git
Use the status command to check your status
git status
The result should look like
On branch master Your branch is up-to-date with 'origin/master'. nothing to commit, working directory clean
Switching branches
Most likely you will not use the default branch of an ICON repository but some feature or project branch. When you switch between branches it can happen that your local submodules (e.g. JSBACH, YAC) are out of sync with the ICON source. You can fix this by updating the local submodules after switching the branch
git checkout -b feature-<other-branch> git submodule update
—- — Monika Esch 2022/11/09 10:10