複数のコミットを積み上げていくうちにpull-requestが長大になっていって追いにくいという事があると思います。
gitにはせっかく歴史改変の機能があるので活用しましょう。
git format-patch
でパッチファイルを作る際も1コミットにまとめて置くと1ファイルのみになって管理が楽です。
devブランチに対するpull-reqを作っていて、featというブランチを1コミットにまとめるという作業で例示します。
事前にrebase等を済ませて、devブランチの先端からfeatブランチが伸びて何コミットか積み重なっている状態を前提とします。
$ git branch -M feat tmp_squash # 何でもいい別の名前に変える
$ git checkout dev
$ git checkout -b feat # devブランチをベースに作リ直すのがポイント
$ git merge --squash tmp_squash # squashで1つの変更として取り込む
$ git commit -am'my new feature!!!' # 好きなコミットメッセージ
$ git branch -D tmp_squash # 一時作成したブランチを消す
$ git push my_repo feat -f # remoteと食い違うので -f
pull-reqはブランチ名で追跡される(今回はfeatという名)ので同じブランチ名にする必要があります。