1. clone
git clone git://github.com/boto/boto.git

2. see if there is more in trunk (hg incoming)


3. status 
git status

1. Remote branches

push remote branch
git push  :

git remote update

#checking out remote tracking branch for a first time
git checkout -b  /
e.g. git checkout -b phase_2 origin/phase_2

-To roll back to certain commit - will ERASE anything before it use with care

git reset --hard 
e.g.
git reset --hard 27f51de8bcd2382ee55a553d09bbab0bf587ee3a


#To see tags when using log do this
git log --decorate

#To edit the last commit message - however never do this after you already pushed that commit!
git commit --amend -m "New commit message"
or
git commit --amend

#to simply recreate local branch from master useful when squashing frequently - warning this will nuke the rest branch and replace it with master
#while on master branch
git branch -f rest


#to make a patch (consumable by patch)
git diff --no-prefix


#to checkout certain version
git checkout 7f51de8bcd2382ee55a553d09bbab0bf587ee3a
#to then get back to HEAD
git checkout master

#to restore single file to certain version
git checkout abcde file/to/restore
#NOTE git will leave the file in added state as seen by git status


Move existing, uncommited work to a new branch in Git or simply create new branch
git checkout -b foobranch

Pull Requests:

1. Push your local branch upstream while also track it
git push --set-upstream origin foobranch

2. In github select master and create pull request
base branch is where you want your changes to applied - most likely master

head branch is where your changes are coming from in our case foobranch