git-novice
git-novice copied to clipboard
Question about the title of the first lesson
The title of the first lesson is "Automated Version Control", but I found this confusing for the following reasons. The first is that the "Automated" part is not explained anywhere in the lesson, other than being mentioned in the first paragraph and in "The Long History of Version Control Systems". The second is that Git is not automated, or at least in the sense that would normally be though of as automation. All the committing, branching, merging, etc. must be performed manually, so I don't understand what is being referred to here. I would suggest changing the title to "Introduction" or "Overview", or "What is version control?", etc.
"Automated" refers to using a computer program to do most of the version control work. We introduce the lesson by trying to connect to the different ways in which people may be using some sort of version control. For example, adding each daily version of a paper to folder named "paper-dd-mm-yy" would be a way some people is doing version control. But this is not "automated" is the sense that you need to decide on the naming, do the copy, etc...
Some folks may be have a more "automated" system, say a script that copies the current version of the paper to such folder at midnight, but this still requires at least to decide on a workflow.
Git is automated in the sense it provides a framework in which you just decide which set of changes make a new version and the rest is basically taking care of by the computer. In particular, you don't need to name (and remember the names) of the versions. This is surprising to many people (the fact that you don't end up with many copies of the files in your working directory) and may feel as some sort of automation.
Most people would say that Word automatically saves your work when autosaving or that Dropbox keeps copies of older versions automatically, so we try to capitalize on this.
We also mention in the introduction that this is not as automated as Dropbox or Word, which also decide for you which changes constitute a new version.
I can see your reasoning, and there are certainly things that Git and other VCs do that could be considered automation. Maybe instructors explain it like this during a session? I just think an explanation like the one above would help clarify what is meant by the term for someone reading the lesson.
Having a call-out that goes more in-depth, but can be skipped by instructors might work. It might be as simple as discussing automated vs automatic