Fork it!

This post assumes you are somewhat familiar with version control systems. But, it is entirely possible to contribute to the stacks project without knowing what such a thing is at all. So this post is aimed at people who’d like to experiment with version control, git, etc.

So with the move to github it becomes easier for you to do things.

Recall that git is a distributed version control system. This means that anytime you clone the stacks project repository (as explained here) your local version is an exact copy of the stacks project. When you work on it you are literally working on the stacks project. After you’ve made some changes you ask the maintainer of the stacks project (that would be me right now) to incorporate this into the online version. The documentation for the stacks project suggests to email patches to the maintainer.

Now there is another way to proceed: You can fork the project on github.

The procedure for doing this is roughly as follows. Get an account on This is ridiculously easy to do. Log in. Then just fork the stacks-project. Instead of cloning the stacks project, you clone the fork you just made (as explained on the github page above). Edit you local copy. Push your changes back into the fork. Now your work is visible to the world! Finally, if you like, you can make a pull request to have your changes incorporated back into the official stacks project.

In fact, it is so easy to do this, I can imagine creating a clone for every single change; after you’re all done just delete the fork.