Alex DiLiberto
“Open source is the only right way to do software.”
init, clone, add, commit, log, status
$ git commit -m 'initial commit of my project';
$ git commit -m 'fixed bug #1328...';
$ git commit -m 'add feature #32...';
Branch - simply a lightweight movable pointer to a single commit.
$ git branch testing;
What happened here?
Merge vs Rebasegit pull --rebase
Lightweight
Transparent
Scalable
gem install gitflow
pre-commit
post-commit
pre-rebase
post-checkout
post-merge
pre-receive
post-receive
update
$ git diff
$ git (revert|reset)
$ git show HEAD^
$ git show feature~3
$ git log origin/master..HEAD
$ git revert HEAD~2
$ git reset HEAD^
$ git stash
git reflog
, git fsck
, git stash
git pull –rebase
git rebase –i
hooks, testing, proper commit messages, workflows, merging vs rebasing, and more
$ git bundle create /tmp/my-project.backup --all
http://en.wikipedia.org/wiki/Git_(software)
http://www.vogella.com/articles/Git/article.html
http://whygitisbetterthanx.com
http://nvie.com/posts/a-successful-git-branching-model/
http://css.dzone.com/articles/all-git-hooks-you-need
http://net.tutsplus.com/tutorials/tools-and-tips/quick-tip-automation-with-git-hooks/
http://lwn.net/Articles/328436/
http://danielkummer.github.io/git-flow-cheatsheet/
http://www.slideshare.net/saharabeara/advanced-git-tutorial
Alex DiLiberto