Git
推荐个学习git命令即好玩又有趣的神器网站 Learning Git Branching,它让学习git不再那么枯燥乏味,话不多说直接上动图。

怕记不住命令? 没关系!
它提供了完善的沙盒命令,在沙盒里你可以实际执行相应的命令,有很好的命令联想功能,不仅如此还能看到每个命令的执行动作情况。


撤销变更
git reset HEAD^git checkout pushedgit revert HEAD

交互式Rebase
git rebase -i HEAD~4

只取一个提交记录
git rebase -i HEAD~3/git cherry-pick bugFixgit branch -f master bugFix

Git Tag
git tag v0 c1git tag v1 c2git checkout c2

多次Rebase
git rebase master bugFixgit rebase bugFix sidegit rebase side anothergit branch -f master another

两个父节点
git branch bugWork HEAD~^2~

纠缠不清的分支
git checkout onegit cherry-pick c4 c3 c2git checkout twogit cherry-pick c5 c4 c3 c2git branch -f three c2

模拟团队合作
git clonegit fakeTeamwork 2git commitgit pull
推送主分支
git fetchgit rebase o/master side1git rebase side1 side2git rebase side2 side3git rebase side3 mastergit push

合并远程仓库
git checkout mastergit pull origin mastergit merge side1git merge side2git merge side3git push origin master

Git Push的参数
git push origin foo:mastergit push origin master^:foo

Git Fetch的参数
git fetch origin master^:foogit fetch origin foo:mastergit checkout foogit merge master

没有Source的Source
git pull origin :bargit push origin :foo

Git Pull的参数
git pull origin bar:foogit pull origin master:side

