私はいくつかの修正を行う必要があるプルリクエストを持っています。その間にマスターは多くのコミットを受けているので、修正を行う前にPRを更新する必要があります。 ローカルにチェックされたマスターから最初にリベースすると、PRブランチを強制的にプッシュすると、PRにマージの変更も含まれますか?Githubは既存のPRへのアップストリーム変更をマージする
私はちょうど私のPRをクリーンアップするように以前に似たような状況で私の変更を含む更新されたPRを持っていたいです。そんなことがあるものか?
私はいくつかの修正を行う必要があるプルリクエストを持っています。その間にマスターは多くのコミットを受けているので、修正を行う前にPRを更新する必要があります。 ローカルにチェックされたマスターから最初にリベースすると、PRブランチを強制的にプッシュすると、PRにマージの変更も含まれますか?Githubは既存のPRへのアップストリーム変更をマージする
私はちょうど私のPRをクリーンアップするように以前に似たような状況で私の変更を含む更新されたPRを持っていたいです。そんなことがあるものか?
ローカルでチェックされたマスターから最初にリベースしてから、自分のPRブランチを強制的にプッシュすると、PRにもマージの変更が含まれますか?
「ローカルにチェックされたマスター」にリベースしてプッシュすると、PRはローカルバージョンのマスターでのみ最新の状態になります。
git fetch
の後にマスタをチェックアウトして元の場所からプルした後にリベースしてorigin/master
にリベースすると、新しいコミット(ブランチの履歴に新しい変更が含まれている)のみが含まれます。
私はちょうど私のPRをクリーンアップするように以前に似たような状況で私の変更を含んでいる更新されたPRを持っていたいと思います。そんなことがあるものか?
2つのオプションがありますそれをリベースしてから、変更を再度適用してください。これは、ブランチが最新でない場合、元のから新しい変更が反映され、変更がより前に適用されることを意味します。リベースの開始時にマージの競合を解決します(履歴はおそらくでコミットになります)、履歴が再実行されるときに必要に応じていつでも解決します。
は、一般的に言って。
GitHub上のリポジトリ所有者からのコミットも一緒にする必要があります。しかし、これはリベースでのみ可能ですが、GitHub now offers the ability to squash commits when merging pull requests、多くのリポジトリ所有者が今自分自身でできるように、あなたにスカッシュを要求することはありません。
Here's a good comparisonアトラスによる。
作業を現在の上流のマスターの上にリベースし、強制的にプッシュすると、新しいPRブランチが古いものを置き換えます。したがって、古いコミットはPRから消え、新しいコミットがそこにあり、マージする準備ができています。
はい、マージも含まれます。チェリーを選んであなたのコミットを試すことができます –