$ git checkout web-123-my-branch # make sure you're on the right branch
$ git fetch # update remote refs
$ git rebase origin/master # perform the rebase onto the current state of master
# for each conflict, edit file, resolve conflicts, git add -u <file>, git rebase --continue
$ git push -f origin web-123-my-branch # overwrite remote branch with newly rebase branch
Don't rebase! Or, one person who is working on the branch, follow above steps, then, all other people...
$ git checkout web-123-my-branch # make sure you're on the right branch
$ git fetch # update remote refs
$ git reset --hard origin/web-123-my-branch # discard the state of your branch, move to the newly rebased branch
$ git checkout web-123-my-branch
$ git fetch
$ git reset --hard origin/master # move your branch to the current state of master
$ git merge --squash head@{1} # merge all changes from your branch into the index
$ git status # verify changes to be committed
$ git commit # edit all commit messages from previous commits down to a single sane commit message
$ git push -f origin web-123-my-branch # overwrite remote branch with newly rebase branch