2016-08-26 10 views
3

私はプルリクエストを要求していますが、いくつかのファイルが必要でないことがわかります。つまり、.tmpなどは編集しないでください。不正なコミットを元に戻すためにプルリクエスタが行うべきこと

この問題を解決するには、リクエスタがプルする必要があるgit操作はどれですか? 私の見解では、ブランチを1つだけ表示し、悪いコミットを良いものと分けることはできません。プルリクエスタにローカルコミットもない場合はどうなりますか?もし彼がいたら?

+5

開発者に問題の修正を依頼し、その変更をPRブランチにプッシュします。 –

+0

@BryceDrew:GitHubの介入なしにPRに修正を提出するプルリクエスタが関係しているので、私はこの質問が他の何よりもGitに関するものだと主張したいと思います。 – Makoto

+0

@Makoto Pull Requestはgitの機能ではありません。 –

答えて

3

これを行うには複数の方法があり、適切な方法は寄稿者の方針に依存します。

プルリクエスタ(PRを提出するユーザ)は、任意の数の方法でPRを修正できます。 PRの重要な部分は、集約の変更がPRのすべてのコミットによって作成されたことです。 1つのコミットに行が追加され、別の行で削除された行は、その行を一切表示しません。

あなたの変更履歴にこのPRをどのように表示したいのですか?いくつかのプロジェクトは、集合チェンジセットである単一のコミットにPRを押しつぶしたい(プルリクエスタは対話的なrebaseを使ってこれを行うことができます:git rebase -i HEAD~nここで、nはPRブランチのコミット数です)。コミットが1つしかないので、プロジェクトがどのように動作しているかを推測しています。インタラクティブなリベースとスクアッシュを「歴史を書き直す」と考えている人もいれば、お互いを元に戻しても変更の集合を信じる人もいるでしょう。

クリーンな履歴が必要な場合は、プルリクエスタにそのブランチをクリーンアップするように依頼することができます。彼らは、問題を修正してコミットを追加し、ブランチを押しつぶしたり、作業ツリーを変更したり、すでに縮んだコミットを更新したりすることで、これを行うことができます。彼らはその後、ブランチを強制的に押して、更新された「クリーナー」ブランチでPRを更新するという効果が得られます。

しかし、そこにそれを行うには複数の方法がありますので、これは答え、ない答えです。

+0

私の見解から、私は押しつぶされて欲しいです。しかし、ここでの問題は、不要なファイルをブランチから削除する方法(ファイルはマスター上に存在しません)と、マスター上に存在するファイルに対して不要な変更を削除する方法です。 – userbb

+1

開発者の変更が一回のコミットになったら、不要なファイルを削除して 'git commit --amend'を使ってこのコミットを簡単に修正できます。 –

+0

はい。したがって、プルリクエスタは、問題を解決するブランチの変更を行い、コミットし、ブランチを再スカッシュし、強制的にプッシュする必要があります。 – pjmorse

関連する問題