web-dev-qa-db-fra.com

Mercurial / HG - Abandon: fusions non engagées en cours

J'ai un dépôt principal sur Host1 et j'ai mis à jour un dépôt sur Host2. JE hg Pushed les modifications de Host2 à Host1 avec

[mpenning@Host2 login]$  hg Push ssh://Host1//opt/python/login

Cependant, lorsque j'essaie de mettre à jour ou de fusionner, j'obtiens

[mpenning@Host1 login]$ hg update
abort: outstanding uncommitted merges
[mpenning@Host1 login]$ hg merge
abort: outstanding uncommitted merges
[mpenning@Host1 login]$ 

J'ai aussi essayé un hg pull de Host1, mais cela n'a pas fonctionné non plus ...

[mpenning@Host1 login]$ hg pull ssh://Host2//opt/python/login
running ssh Host2 'hg -R /opt/python/login serve --stdio'
mpenning@Host2's password:
pulling from ssh://Host2//opt/python/login
searching for changes
no changes found
[mpenning@Host1 login]$ hg merge
abort: outstanding uncommitted merges
[mpenning@Host1 login]$

Que dois-je faire pour mettre à jour mon référentiel maître sur Host1 avec les modifications de Host2?


Plus d'informations sur le dépôt sur Host1 ...

[mpenning@Host1 login]$ hg parents
changeset:   27:6d530d533997
user:        Mike Pennington <[email protected]>
date:        Wed Sep 26 11:44:51 2012 -0500
files:       mp_getconf.py
description:
fix issue where config retrieval was broken


changeset:   29:eaf3b5aacfe6
user:        Mike Pennington <[email protected]>
date:        Wed Sep 26 11:43:15 2012 -0500
files:       mp_getconf.py
description:
fix artifact of using the script to run generic commands, but this broke config retrieval


[mpenning@Host1 login]$
43
Mike Pennington

hg update --clean -r tip a résolu le problème ...

[mpenning@Host1 login]$ hg update --clean -r tip
resolving manifests
getting Protocol.py
getting Session.py
getting mp_getconf.py
getting mp_runcmd.py
4 files updated, 0 files merged, 0 files removed, 0 files unresolved
[mpenning@Host1 login]$ hg up
resolving manifests
0 files updated, 0 files merged, 0 files removed, 0 files unresolved
[mpenning@Host1 login]$
85
Mike Pennington

À un moment donné, vous avez fait:

$ hg pull (or maybe someone pushed to you)
$ hg merge

... puis a continué. Cela a laissé la fusion non engagée. C'est ce que signifie "abandonner: des fusions non engagées exceptionnelles". Vous ne pouvez pas faire "x" car vous n'avez pas terminé de travailler sur la fusion que vous avez commencée.

Ce que vous auriez dû faire, c'est:

$ hg pull
$ hg merge
  <Sorted out any issues>
$ hg commit -m 'Merged the blah with wibble-wah'

... puis a continué.

hg status et hg summary aurait montré qu'il y avait des changements en suspens.

12
Paul S