git and GitHub ----------------- Version control is a system that records changes to a file or set of files over time so that you can view or use specific versions later. It is a fundamental tool in modern software development, and we recommend always using version control on your projects, even if you are working alone. Version control also facilitates collaboration between multiple people working on the same project. The most popular version control system is git, and you should have it set up on your comptuer from the set up section. Git projects (or repositories) can be hosted on a variety of platforms, but the most popular is GitHub. GitHub is a web-based hosting service for git repositories, and it provides a number of tools for software development. This section covers the basics of version control using git and sharing and collaborating on code using GitHub. If you would like to do the `git` and GitHub lessons outside of the context of the CookieCutter, see our :doc:`standalone lesson on git<00-git-standalone>` and :doc:`standalone lesson on GitHub<00-github-standalone>`. .. csv-table:: :file: csv_tables/git_and_github.csv :header-rows: 1 .. toctree:: :maxdepth: 1 :hidden: 02-git 03-github 07-collaboration