Subject: Re: error: failed to push some refs

From: "Shawn O. Pearce" <[email-masked]>
Date: Sat, 6 Mar 2010 18:18:49 -0800

Thomas Anderson <[email-masked]> 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.