Skip to content

Commit

Permalink
Importing lessons on Git
Browse files Browse the repository at this point in the history
  • Loading branch information
gvwilson committed Nov 13, 2013
0 parents commit 83ffd21
Show file tree
Hide file tree
Showing 6 changed files with 1,511 additions and 0 deletions.
38 changes: 38 additions & 0 deletions 00-intro.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
Introducing Version Control
===========================

Wolfman and Dracula have been hired by Universal Missions
(a space services spinoff from Euphoric State University)
to figure out where the company should send its next planetary lander.
They want to be able to work on the plans at the same time,
but they have run into problems doing this in the past.
If they take turns,
each one will spend a lot of time waiting for the other to finish.
On the other hand,
if they work on their own copies and email changes back and forth
they know that things will be lost, overwritten, or duplicated.

The right solution is to use [version control](../gloss.html#version-control)
to manage their work.
Version control is better than mailing files back and forth because:

* It's hard (but not impossible) to accidentally overlook or overwrite someone's changes,
because the version control system highlights them automatically.
* It keeps a record of who made what changes when,
so that if people have questions later on,
they know who to ask
(or blame).
* Nothing that is committed to version control is ever lost.
This means it can be used like the "undo" feature in an editor,
and since all old versions of files are saved
it's always possible to go back in time to see exactly who wrote what on a particular day,
or what version of a program was used to generate a particular set of results.

This lesson shows how to use
a popular open source version control system called Git.
It is more complex than some alternatives,
but it is widely used,
primarily because of a hosting site called [GitHub](http://github.com).
No matter which version control system you use,
the most important thing to learn is not the details of their more obscure commands,
but the workflow that they encourage.
Loading

0 comments on commit 83ffd21

Please sign in to comment.