From d15a5c0fe1380bc33368d08f3cf4564a60146243 Mon Sep 17 00:00:00 2001 From: Rich Trott Date: Tue, 15 Aug 2017 21:30:38 -0700 Subject: [PATCH] doc: explain what to do if git push is rejected MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit In COLLABORATOR_GUIDE.md, explain what to do if `git push upstream master` is rejected. PR-URL: https://github.com/nodejs/node/pull/14848 Fixes: https://github.com/nodejs/node/issues/12628 Reviewed-By: James M Snell Reviewed-By: Yuta Hiroto Reviewed-By: Michaƫl Zasso --- COLLABORATOR_GUIDE.md | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/COLLABORATOR_GUIDE.md b/COLLABORATOR_GUIDE.md index 116624a79aefd0..bb012ba90e06ae 100644 --- a/COLLABORATOR_GUIDE.md +++ b/COLLABORATOR_GUIDE.md @@ -512,6 +512,33 @@ your pull request shows the purple merged status then you should still add the "Landed in .." comment if you added multiple commits. +### Troubleshooting + +Sometimes, when running `git push upstream master`, you may get an error message +like this: + +```console +To https://github.com/nodejs/node + ! [rejected] master -> master (fetch first) +error: failed to push some refs to 'https://github.com/nodejs/node' +hint: Updates were rejected because the remote contains work that you do +hint: not have locally. This is usually caused by another repository pushing +hint: to the same ref. You may want to first integrate the remote changes +hint: (e.g., 'git pull ...') before pushing again. +hint: See the 'Note about fast-forwards' in 'git push --help' for details. +``` + +That means a commit has landed since your last rebase against `upstream/master`. +To fix this, fetch, rebase, run the tests again (to make sure no interactions +between your changes and the new changes cause any problems), and push again: + +```sh +git fetch upstream +git rebase upstream/master +make -j4 test +git push upstream master +``` + ### I Just Made a Mistake * Ping a CTC member.