シナリオは次のとおりです。
私は公開レポAを持っています。BobはAをフォークし、 にいくつかのコミットを追加しBob/masterてプル リクエストを送信し、これらの変更を にマージしA/masterます。にマージする前に、提案されたプル リクエストにいくつかの変更を加えたいと思いA/masterます。
にプッシュできない場合、どうすればそれを行うことができBob/masterますか?
シナリオは次のとおりです。
私は公開レポAを持っています。BobはAをフォークし、 にいくつかのコミットを追加しBob/masterてプル リクエストを送信し、これらの変更を にマージしA/masterます。にマージする前に、提案されたプル リクエストにいくつかの変更を加えたいと思いA/masterます。
にプッシュできない場合、どうすればそれを行うことができBob/masterますか?
ここで使用できるワークフローは多数あります。いくつかの例は次のとおりです。
プル リクエストにコメントし、Bob に変更を加えてもらいます。詳細については、プル リクエストのディスカッションを参照してください。
プル リクエストを別のブランチにマージし、マスターにマージする前に変更を加えます。コマンドラインからこれを行う必要があります。段階的な手順については、プル リクエストのマージを参照してください。
で適用する前にパッチを編集しgit amます。パッチと適用を参照してください。これはおそらく最も柔軟なオプションですが、最も手動的でもあります。
git checkout master
curl http://github.com/<username>/<project_name>/pull/<patch_number>.patch
sensible-editor <patchfile>
git am <patchfile>
git push origin master
Bob/master解決策の 1 つは、リビジョンを含むPR を作成することです。Bob/masterBob はあなたの PR を;にマージできます。Bob の PR を にマージA/masterすると、Bob のコミットとあなたのコミットが含まれます。
任意のフォーク/ブランチから他の任意のフォーク/ブランチへの PR を作成できます。したがって、Bob が から PR を送信した場合は、PR をBob/featureに作成するだけBob/featureです。
ローカルリポジトリの彼のブランチからプルできます(github gui内ではありません)
# make same work-in-progress branch and check it out
$ git checkout -b WIP
# pull his changes into WIP
$ git pull https://github.com/... master
そこから容赦なく変わる。
もう 1 つのオプションは、github のコメント システムを使用して、彼にパッチセットを変更するように説得することです (そうすれば、マージ後もクレジットを保持することができます)。