web-dev-qa-db-ja.com

特定のファイル/コミットのみのプルリクエスト

GitHub から分岐されたリポジトリがあり、それにいくつかの変更が加えられています。ただし、特定のコミットで、プルリクエストを送信するファイルがいくつか変更され、他の変更されたファイルはリクエストから除外されます。

プルリクエストはマージallコミットを実行しますか、それともこのコミットを分離するために特別なことをする必要がありますか?

54
Qix

プルリクエスト全体をコミットする場合、このコミットを、プルリクエストに入れる変更を含む2つのコミットと、他の変更を保持する2つのコミットに分割する必要があります。これを行うには、git rebase -iが必要です。たとえば、 履歴に埋もれたGitコミットを分割するにはどうすればよいですか? を参照してください。

コミットを分割したら、含めるブランチをトピックブランチに移動します。たとえば、 gitで特定のコミットを別のブランチに移動する方法? を参照してください。ただし、プルリクエストはシーケンシャルです。

最後に、Githubにプッシュして、トピックブランチからプルリクエストを作成できます。

37
CharlesB

プルリクエストはブランチをマージします。したがって、プルリクエストのためにいくつかのものを分離したい場合は、それらの変更を別のブランチに配置するのが最善です。

利点は、そのブランチに新しい変更をプッシュすることでプルリクエストを変更できることです(すでにプッシュされたコミットを変更する必要がある場合は、Push -fでも)。

13
Ikke