Each repo is added as a git submodule, and each directory leads to the solutions repo of the given contributor. Entries that are not shown as links are hosted on platforms other than Github (e.g., Gitlab), and links to those should be part of the last commit message (see ptrfrncsmrph
for example).
Stackoverflow questions 1 and 2 are very helpful, but the gist is:
-
clone all repos:
git clone --recurse-submodules https://github.com/sac-fp/HaskellBook-solutions.git
-
clone specific repo(s):
git clone --recurse-submodules=ptrfrncsmrph --recurse-submodules=txels https://github.com/sac-fp/HaskellBook-solutions.git
See more at section --recurse-submodules
in git help clone
.
From the command line:
- Fork this repo
git clone https://github.com/<your-github-username>/HaskellBook-solutions.git
git checkout -b add-solution
git submodule add <url-of-your-repo> <your-github-username>
- Stage and commit your changes
git push origin add-solution
- Create a pull request
- Don't be afraid to commit
- The Github Blog - Working with submodules
- Stackoverflow - Add git submodule with a different name
- Stackoverflow - How do I remove a git submodule?
A list of solutions are available at https://github.com/CarlosMChica/haskell-book-readers-exercises but it hasn't been updated for a couple months now.