From: Shawn O. Pearce Date: Sun, 07 Mar 2010 02:18:49 GMT Subject: Re: error: failed to push some refs Message-ID: <20100307021848.GI2529@spearce.org> In-Reply-To: <15b345f1003061815y52a4e842u9373731cecd8ec60@mail.gmail.com> Thomas Anderson wrote: > I cloned git://github.com/symfony/symfony.git to C:/git/test-root and > then cloned C:/git/test-root twice to C:/git/test-clone and > C:/git/test-clone2. I modify the README file in C:/git/test-clone, > stage it, commit it and then try to push it to C:/git/test-root and > get this message: > > To prevent you from losing history, non-fast-forward updates were rejected > Merge the remote changes before pushing again. See the 'non-fast forward' > section of 'git push --help' for details. > Pushing to C:/git/test-root > To C:/git/test-root > ! [rejected] master -> master (non-fast forward) > error: failed to push some refs to 'C:/git/test-root' > > What does that even mean? Exactly what the message said to you: To prevent you from losing history, non-fast-forward updates were rejected Merge the remote changes before pushing again. See the 'non-fast forward' section of 'git push --help' for details. Someone else (your other clone) modified your project in the interim. To prevent losing their change, you need to use `git pull` to bring in their work, merge it with your own, and then you can push it to the destination. For more details, check the `git push` manpage section suggested by the error message above. -- Shawn.