mercurial push /pull problem
After my team friend did a push operation on our repo I can't do push operation.
First I commit later I click push
Push will not be performed because it would create remote branches.
You must first resync by doing a Pull from the target repositor开发者_StackOverflowy and Merge.
Later I click pull I got this
INFO Pulling From: https://mercurial.intuxication.org/hg/itucs-blg361-2010-g27 ...
comparing with https://mercurial.intuxication.org/hg/itucs-blg361-2010-g27
searching for changes
no changes found
INFO Pulled From: https://mercurial.intuxication.org/hg/itucs-blg361-2010-g27
INFO To: hastaneBilgiSistemi - C:\Users\yakUP\Desktop\wicket\hastaneBilgiSistemi
INFO: End of Mercurial Pull
What can I do?
I tried update. It says:
Mercurial Update
----------------
Update to revision 25 in:
C:\Users\yakUP\Desktop\wicket\hastaneBilgiSistemi
abort: crosses branches (use 'hg merge' to merge or use 'hg update -C' to discard changes)
INFO: End of Update
graph is like:
Im new to mercurial.To get the message about creating new heads on the server, yet pull saying there is no new changesets, means that you already have all the changesets from the server.
What you should do is look in your local clone and merge the multiple heads together to get one again, then you should be able to push.
However, you probably won't be able to do this on Windows (judging by the path examples in your question) since there is a case-folding collision between two files:
- src/java/itucs/blg361/hbs/linkpage.java <-- notice lower-case p in linkPage
- src/java/itucs/blg361/hbs/linkPage.java <-- notice upper-case P in linkPage
This will prevent you from actually using that branch unless someone with a system that considers the two to be different files (like *nix) gets rid of one of them for you, pushing that, and then you pulling in that new changeset.
So you have a couple of options:
- Force the push with --override (or the GUI equivalent). This is usually not the right way. This will create another head on the server, and then suddenly you have at least 3 different versions of the project.
- Pull (like you've done), merge, then push. This is usually the preferred choice. You should merge together the heads that belong together to get back to one branch.
In any case, I would figure out why you have multiple heads in the repository already. Did someone force a push? Was it intentional?
And get TortoiseHg - It'll make your life easier
精彩评论