git
We have numerous Starter Guides to help you use git
, both on and off of Anvil. If you are new to using git
on Anvil, first see the "Setup git on Anvil" Starter Guide, then "git CLI on Anvil" will explain how to make code changes.
-
Setup git on Anvil ← do this once
-
git CLI on Anvil ← do this repeatedly when editing and pushing code
What is git
?
git
is a powerful version control software written by Linus Torvalds, the inventor of the Linux kernel. git
has a reputation for being complicated and confusing. While there may be some truth to this, git
is used extensively in industry, and is relied upon by many of the applications being developed today.
While there are certainly advantages to understanding git
in detail, it is unnecessary for many projects. It is possible to get the "gist" of git
by learning some basic terminology, workflows, and how git
fits into a regular data science or software project. For this book, this is our goal. We want to provide you with the smallest amount of information that allows you to incorporate git
into your project, or helps you feel comfortable using git
in an already established project. If you want to take a deeper dive into git
, check out the resources section below.
git vs. GitHub
While git
may be largely synonymous with GitHub, they are distinct things. git
is a piece of software running on your computer — your local system. You can use git
without using GitHub (or another host like GitLab). git
works just like other familiar programs like grep
or sed
. Like grep
or sed
, you can read about the commands and options by reading the man
(short for manual) pages.
man git
Microsoft’s GitHub, however, is a software development and version control platform, hosted online. git
is a complicated tool, and platforms like GitHub aim to make using git
as pain-free as possible. It is free and easy to create a GitHub account. Other competing platforms include: GitLab, sourcehut, Gitea, and Bitbucket. Each platform has their advantages and disadvantages, but all largely serve the same purpose.