git
can be confusing- let's be honest.
Stage all local changes
git add --all .
Revert modifications to a file
git checkout [filename]
Unstage a file for the next commit
git reset [filename]
Delete local branch
git branch -d [branch-name]
Delete local branch (with unmerged commits)
git branch -D [branch-name]
Delete remote branch
git push [remote-name] --delete [branch-name]
Change branch up-stream
git --set-upstream=[remote]/[branch]