EGit on Eclipse: How to git push
I've run into a problem with my origin/branch being out of sync with my local branch, see below
When I try to PUSH from my local "staging" branch to the origin/staging branch I get the "rejected - non-fast-forward" error.
I use Eclipse with the EGit module on a windows PC.
From another post here I see that I can resolve my issue with the "git push --force origin staging" to over-ride the origin/staging branch with my local branch.
However, I don't see that option with EGit, and I don't see how to open a console in EGit to do this?
Does anyone know if I can do this within EGit?
OK - fixed my own issue. It appears I had issues with Commits that had not been Pushed back to origin/staging. Found an overview here on using the "git reset XXX : without --hard" which resets the branch marker, but keeps the local changes for later recommits.
Thanks, Jason
I have just come across a similar issue and here's what I did:
Are you sure you want to overwrite the remote branch and lose all those commits?
If there are commits on the remote branch that aren't in your local branch, you should merge them into your local branch before pushing
For example, whilst on your local staging
branch:
git merge origin/staging
However, if you're sure, then I suggest you check the "Force update" option on the push refspec.
It's a little complicated to get to, but the EGit user guide explains it when discussing Pushing to other Repositories, and the specific section that mentioned the "Force Update" option is in the section on Push Ref Specifications
Edit 0: With respect to your failed merge, I've not yet encountered a merge that fails outright rather than result in a conflict, and it appears it may be a known issue
If you do a force push, you will lose everything added to origin/staging
after fixing the missing Location: string in the header, and you'll break everyone else's branches. I don't think that's what you want. You probably want to do a pull first, then the push will work just fine.
上一篇: 合并vs rebase
下一篇: 在Eclipse上EGit:如何git推