Centralized VCS
Distributed VCS
CVS, Subversion, Perforce, Bazaar...
Git thinks
Local operations
File status lifecycle
Branches
After checkout
Divergent history
Directly upstrean of current commit
Fast-forward
Directly upstrean of current commit
Three snapshots
A merge commit
Three snapshots
Multiple topic branches
After merge dumbidea and iss91v2
Simple divergent history
Merge to integrate work
Simple divergent history
Rebase C4 onto C3
Merge to integrate work
Fast-forward after ren
Rebase C4 onto C3
Simple divergent history
Fast-forward after rebase
Simple divergent history
Rebase server onto master
Fast-forward after rebase
Fast-forward master
Fast-forward after rebase
$ git stash
$ git checkout master $ git branch -d $ git thanks