Now that we're all set up and ready to use git, let's take a second to talk about what git is, why it has become so essential for so many projects, and let's go over a common workflow - the one we'll use here.
Simply put, git is a version cotrol system that is used to develop, track, and maintain software. Originally developed by Linus Torvalds, the inventor of Linux, git has grown to be an industry standard, providing the functionality necessary to create projects on every scale.
Arguably one of the greatest things about git (and the reason we are using it) is that it enables collaboration. The git architecture allows for projects to be worked on by many people while providing a solid system for tracking and maintaining the software.
If you've made it this far, then you're ready to contribute. While there are several different workflows that can be utilized, for this (and other) PyAugusta projects, we'll encourage this one:
- Create a fork of the project you want to contribute to.
- Clone your fork (i.e. download the code).
- Create "feature" or "issue" branches for each change you want to make.
- Add, commit, and push changes to your fork.
- Test your code.
- Clean up and merge your fork.
- Submit a "pull request" (ask the lead project developers to implement your changes).
This all might seem like a lot, but once you've done it a couple of times, it's the most natural thing in the world!
To learn how to create your own fork of this very project, check out the next lesson here.