Как выполнить rebase для pull request на github?

Разработка на C# под linux
 
Когда нужен rebase - когда PR был сделан, но не принят сразу, а за это время авторы продвинули проект вперед.

скопировать ветку master

git fetch upstream/master
получить изменения с далёкого репозитория на сервере upstream в директорию .git
git checkout master
переключаемся на ветку master,
при этом выполняется два действия:
- локальные файлы заменяются на содержимое ветки (может не выполнится, если есть незакомиченные изменения)
- ветка переключается на указанную
если на ветку master не переключиться, то следующая команда запортит текущую ветку
git reset --hard upstream/master
HEAD is now at 946ee2f Update and rename msbuild-commands.md to publish.md
    ^^ просто установить локальную копию в точно такое состояние, в каком эта ветка лежит в далёком репозитории
    http://stackoverflow.com/questions/11356460/how-to-cleanly-get-copy-a-remote-git-branch-to-local-repository
git push origin master -f
    ^^ эта команда вносит изменения в далёкий репозиторий origin из текущего состояния (-f = принудительно)
    http://stackoverflow.com/questions/10510462/force-git-push-to-overwrite-remote-files

выполнить rebase

https://www.kernel.org/pub/software/scm/git/docs/git-rebase.html
git branch -v
показать список веток
git checkout mybranchname
переключиться на ветку, которая засабмичена как PR
git rebase origin/master
выполнить перемещение
http://stackoverflow.com/questions/7929369/how-to-rebase-local-branch-with-remote-master

Подчистить историю

git rebase меняет id коммитов
Так что это хорошее время для того, чтобы привести историю ветки в логически удобный вид (например объединить всё в один коммит)

Опубликовать

git push -f
отправить ветку на сервер

Разное

Что такое github - крупнейший (в 2015-м году) веб-сервис для хостинга IT-проектов и их совместной разработки. (https://ru.wikipedia.org/wiki/GitHub)
Что такое Pull Request - предложение от контрибтютора к авторам проекта (http://habrahabr.ru/post/125999/)