Since my last post on the subject, I’ve become much more familiar and comfortable with Git.
While I still don’t consider myself an expert – especially when it comes to truly distributed collaboration – I did manage to pass on some basic knowledge to those around me just getting started.
In the process I came up with a very concise introduction – and even though it’s almost trivial, the following illustration of the basic workflow might be worth sharing (ASCII art ahead):
repository (remote)
^ |
| |
push pull
| |
| V
working copy --add--> index (staging area) --commit--> repository (local)
\ /
\------------commit -a-----------/
Useful Commands:
statuslog [-p] [--stat]diff [-w] [--color-words]checkout <treeish> <file>(reverting)initclone
My configuration is available on GitHub – this might serve as a reference for further exploration (e.g. aliases).