Workflow for branching and merging:

git checkout -b my-task # create a new branch named "my-task"
# make changes
git commit -a
git checkout master # return to master branch
git merge my-task # merge my-task in to master branch
git pull . my-task # merge changesets from my-task