2017-06-22 6 views
2

私のプロファイルにいくつかのレポをフォークしてから、変更を加えて、ブランチ名dev_branchで自分のプロフィールに変更をプッシュしました。このブランチを使用して、ソースリポジトリのstagingブランチにプルリクエストを発行しました。所有者は、マージ前にいくつかの変更を行うことを望んでいます。要求された変更を組み込むためにプル要求をどのように更新する必要がありますか?既存のプルリクエストに対するレビューの変更方法

正確に同じ質問がここにあります:How to update a pull request from forked repo?。しかし、これは私のためには機能しませんでした。

私は私の個人的なリモートレポにプッシュしようとすると、私は次のエラーを取得する:

hint: Updates were rejected because the tip of your current branch is behind 
hint: its remote counterpart. Integrate the remote changes (e.g. 
hint: 'git pull ...') before pushing again. 
hint: See the 'Note about fast-forwards' in 'git push --help' for details. 

私は、新鮮なクローンをやって、その後、変更を適用しようとしたgit commit --amendを行なったし、その後、git push -u origin dev_branchをプッシュしようとしました。それでも同じエラーが発生します。

私もこの要点を試しました:https://gist.github.com/lolindrath/4454638。まだ同じエラー。

何が間違っていますか? githubは本当に--amendをサポートしていますか?

注:メッセージにコミットIDはありません(問題がある場合)。

+0

私はメッセージがあなたにどのように進行するかのアイデアをはっきりと与えると思います。最初に引っ張ってから押してください。必要な変更を行い、それを新しいコミットとしてステージングします。 –

+0

本当に必要でない場合は修正しようとしないでください。 –

+0

@AnoopToffy:私もプルしようとしました。論理的に考えると、新鮮なクローンであれば、なぜそれが再びプルする必要があるのでしょうか。私は 'git commit --amend'はコミットIDを変更し、ローカルとリモートの間に違いが生じると思います。したがって、問題 –

答えて

0

あなたは新しいコミットを作ることができますが、とにかく上流/マスターの上にあなたのブランチをリベースする必要があります。そのように、あなたはあなたのブランチがまだ元のレポからの最新の上に動作することを確認してください:

git remote add upstream /url/original/repo 
git fetch upstream 
git rebase upstream/master 

git push --force 

プッシュを強制することをためらう必要はありません。これにより、の既存のプル要求が更新されます。詳細は「Git - When to use force push」を参照してください。


それが再びプルを必要とする理由、その新鮮なクローン、あれば、論理的に考えてみてください。

あなたはフォーク(「起源」)から引き出す必要はありません。
新しいコミットを追加して新しいリポジトリを追加する必要があるときは、元のリポジトリが独自に進化している可能性があるため、元のリポジトリ(フォークしたもの)をフェッチする(プルしない)必要があります。

関連する問題