Search code examples
eclipsegitegit

Eclipse EGIT - all committed, pulled, merged, marked as merged, still on push I get "rejected - non-fast forward", what am I missing?


I'm starting to experiment with Git, and I'm sure I'm missing something, as I can't do a simple merge and push

Here is what I do (I probably got it in the wrong order, or wrong in any order, please correct if it is)

  • pull
  • Syncronize Workspace
  • on conflicts - did a manual merge,
  • then "Mark as Merged" (is it necessary?)
  • on the rest - allowed the automatic merge
  • commit my changes
  • pressed push (origin-master)
  • I get the famous "rejected - non-fast forward"
  • did a "fetch" to check - nothing to update
  • did another commit - nothing to commit

What am I missing?

Not sure if it's relevant but I'm using Windows 7, EGit (1.3.0.201202151440-1) in Eclipse Indigo (SR2, build 20120216-1857) and pushing to GitHub


Solution

  • I think I found it, instead of "Mark as Merged", I need to do "Add"

    Manual conflict resolution

    To resolve a conflict you have to do the following steps:

    Navigate to the conflicting resource Edit the content of the conflicting resource Tell EGit that the conflict is resolved with Team -> Add

    Commit the conflict resolution with Team > Commit

    from http://wiki.eclipse.org/EGit/User_Guide#Manual_conflict_resolution

    Edit: apparently, I should have learned git command line before playing with EGit, same concept there