git push origin :fakebranch
git pull origin
git merge master
git push remote local_branch:remote_branch
git push remote typo:develop
git fetch
git checkout --track origin/develop
http://stackoverflow.com/questions/67699/how-do-i-clone-all-remote-branches-with-git
pull automatically merges the commits into the branch you are currently working on, without letting you review them. this could cause conflicts if not closely managed.
fetch does not merge with current branch, and instead stores in a local repository. to integrate, use merge.
http://stackoverflow.com/a/7104747/463678
http://stackoverflow.com/questions/804115/git-rebase-vs-git-merge
git checkout -- filename
stashes away any changes in current branch since last commit. use git stash apply
to restore.
scenario: working in feature branch that isnt ready for full merge but has a few commits you want to push to master. copy first 6-7 characters of commit ID's you want, checkout master: git cherry-pick c90fd66
git svn rebase
git svn dcommit