RangeShifter / RScore

RangeShifter's core simulation code
GNU General Public License v3.0
0 stars 0 forks source link

RangeShifter core code

This repo contains the core simulation code for RangeShifter v2.0 and is not meant to be compiled or run on its own.

If you are only interested in using RangeShifter, you can ignore this and head to the repo of one of the interfaces:

Usage: git subtree

In order to ensure that the same version of RangeShifter's core code is used by all three interfaces (RangeShiftR, RangeShifter-batch and the GUI), each interface repo keeps a copy of RScore as a git subtree. In this section, we describe how to use the git subtrees to update the subfolder and copy this repo anew.

First, in a local clone of one of the interface repos, add a remote named RScore pointing to the RScore repo. This will be convenient as a shortcut for git subtree commands.

git remote add RScore https://github.com/RangeShifter/RScore.git

Pulling new changes

To update the RScore subfolder with new changes made to the RScore repo, one can use the git subtree pull command:

git subtree pull --prefix <path_to_RScore_subfolder> RScore <branch>

Note the path must match the location of the RScore subfolder, and the branch must match the one the subtree was originally added from (by default, this should be main).

e.g. for RangeShifter-batch, use:

git subtree pull --prefix src/RScore RScore main

while for RangeShiftR, use:

git subtree pull --prefix RangeShiftR/src/RScore RScore main

Pushing new changes to RScore

git subtree push --prefix <path_to_RScore_subfolder> RScore <branch>

e.g., from RangeShifter-batch's main to RScore's main:

git subtree push --prefix src/RScore RScore main

Switching the subfolder to a new branch

There is unfortunately to do so. To track a different branch of RScore, one must delete the RScore subfolder (via git) and import the subtree again:

git rm src/RScore -r
git commit -m "switching subtree branch"
git subtree add --prefix src/RScore RScore <the new branch>

Contributing to RangeShifter core code

See CONTRIBUTING.

Maintainers