resolving conflicts an push reproduce same conflicts again
So I worked all day on a new feature in my project and after I finished it, I wanted to upload my local commits into the repository.
When I tried to push my commits to the git repository, that push was rejected because of some merge conflicts. So I went through the files, choosing “mine” or “theirs” for every conflict. After I was done with that, git didn’t tell me anything about wether I had to do something more or not. Since I had resolved all conflicts I went on and tried to push again, ending up with the same conflicts I had to solve just before. (I could do that over and over again if I wanted to become insane)
I’m failing in trying to work properly with this tool for some months now.
Pull data. Work work. Commit work. Push. Eventually merge conflicts. Push again. Done. – This is how I had expected git to work but that seems not to be the case. So what steps am I missing? What do I have to do in order to not using up hours after hours reading tutorials like these that still don’t solve my problems as they stop right after solving the conflicts?
Oh, and I am using git via PhpStorm 10.
2 Solutions collect form web for “resolving conflicts an push reproduce same conflicts again”
Here is the sequence of work in your case,
git pull # work work git add $files git commit git pull --rebase # if conflict resolve git add $conflict_resolved_file git rebase --continue git push
git pull --rebase
This above command is the most useful command in my git life which saved a lots of time.
Before pushing your newly commit to server, try this command and it will automatically sync latest server changes (with a fetch + merge) and will place your commit at the top in git log. No need to worry about manual pull/merge.
Find details at: http://gitolite.com/git-pull–rebase
The next time this happens, check PhpStorm’s Event Log. You’ll likely see a status message from
git indicating that after resolving all of your merge conflicts, you need to manually commit the files that were affected during the conflict resolution. Only after doing that should you reattempt the push.
I don’t recall if PhpStorm will suggest a commit message for you in this situation, but an appropriate one would be along the lines of “Merged branch ‘X’ into branch ‘Y'”