Starting with TC-1, code with gaps is provided through the tc-base public Git repository.
We used to provide code through tarballs and patches before, but we only rely on Git now.
This approach is the best one, as
git merge is arguably simpler than
and has other advantages (like preserving the execution bit of scripts, identifying the
origin of every line of code using
git blame, etc.). Each commit containing the
contents of a new stage is labeled with a
Here is the recommended strategy to use this repository.
At TC-1, subscribe to the repository, fetch its contents and integrate the given code using
git mergewith the commit labeled
masterbranch:$ git remote add tc-base https://gitlab.lrde.epita.fr/tiger/tc-base.git $ git fetch tc-base $ git merge 2021-tc-base-1.0
Fix the conflicts and record the merge commit:$ git add src/tc.cc ... $ git commit
For any subsequent stage m, all you will need to do is fetch the new commits from the
tc-baserepository and merge the code given at stage m into yours (and of course, fix the conflicts). E.g.:$ git fetch tc-base $ git merge 2021-tc-base-m.0