2011/3/11 Kelly O'Hair <kelly.oh...@oracle.com> > in the repository. If there are frequent pushes going on, either from too > much activity or too many developers, > someone may experience a: > hg push # fails because you need to do a pull "too many heads message" > hg pull -u && hg merge && hg commit -m Merge # Or hg fetch > hg push # fails because you took too long and someone else pushed a new > one > hg pull -u && hg merge && hg commit -m Merge # Or hg fetch > hg push # fails because you took too long and someone else pushed a new > one >
I suppose this is related to the fact that mercurial has developed over time. But today, using merge to solve this problem would be ill advised. I think it is much better to use the rebase extension to do hg pull --rebase This will move your outgoing changes to the tip and avoid the creation of an unnecessary merge node. Assuming that you have a large number of committers at work at the same time, a simple solution is to have the committers add themselves to a queue, then they get a message (IM,mail or otherwise) when they have exclusive access. When they are done, they relinquish their exclusive acces or it will be revoked automatically after 5 minutes. Fredrik Öhrström