git and GitHub¶
git is a software version control system. git is useful for tracking changes to code, including systematic approaches to adding new features or changing functionality. We use git to track and save code as we’re working on it.
GitHub is one of several online repositories for sharing code (and is commonly used as a remote repository for git). We use GitHub to facilitate collaboration and share code for papers and other projects.
Usage¶
When you start a new project, you should create a GitHub repository right away. It may be prudent to set up initial repositories as private
until you’re ready to release the code (which should always be done ahead of paper submission).
Alternatives¶
There are several alternatives to GitHub, including Bitbucket. You may use whichever online repository you prefer, though we use GitHub for lab-wide management, such as the website and lab manual.
Learn More¶
- Version Control with Git from Software Carpentry
- Github Training from GitHub.
- Getting Started: Git and GitHub from Water Programming.
- A collection of git-related posts from Water Programming.