Basic workflow for git branching:
Create a branch called "my_feature_branch" and change your git to working on that branch:
git checkout -b my_feature_branch
The branch is an exact clone of what master was when you ran the command.
Work as usual, however all edits will live in that feature branch only -- they won't affect master.
If you want to throw out the changes, just git checkout master.
And you'll be back on the main branch with no changes
To get back to your feature branch:
git checkout my_feature_branch
If you want to merge your changes into the master branch:
git add -A git commit -m "message goes here"
then to merge in the changes from the jamie branch:
git checkout master to switch back to the master branch git merge my_feature_branch
You've successfully merged in your feature branch changes. At this point you can leave your feature branch in the git repo, or delete it to merge the history back into master.
Deleting the feature branch (after changes are merged into master):
git branch -d my_feature_branch