Comment supprimer les ensembles de modifications sortants dans Mercurial (hg)

14

quand je cours, hg outj'ai 3 changesets sortants. Je veux les jeter et revenir à la façon dont les choses sont dans le référentiel central. Comment?

adambox
la source

Réponses:

15

Utilisation hg strip 'roots(outgoing())'

wbkang
la source
1
Vous pouvez également spécifier une cible pour les ensembles de modifications sortantes (si vous n'avez pas de référentiel par défaut ou si vous souhaitez supprimer par rapport à un autre référentiel) à l'aide de hg strip 'roots(outgoing(target-name))'.
Jason R. Coombs
Merci @ JasonR.Coombs c'est super utile. J'étais curieux de savoir comment modifier le sortant () en fonction des ensembles de modifications autres que l'URL de dépôt à distance par défaut.
wbkang
3

Soit reclone à partir du référentiel central, soit utilisez clone -rpour recloner uniquement les changesets nécessaires.

tonfa
la source
3

L'autre option consiste à utiliser la hg strip commande , qui fait partie de l' extension mq( files d'attente mercurielles ).

La philosophie mercurielle est d'une histoire immuable, donc les commandes qui manipulent cette histoire sont désapprouvées, mais il y a des moments où le dépouillement ou le rebasage peut résoudre plus de problèmes qu'ils n'en causent.

Si vous utilisez TortoiseHg, vous devrez activer l'extension MQ . Avant la version 1.0 THG, il était activé par défaut, mais après de nombreuses discussions, il a été décidé qu'il s'agissait vraiment d'une fonctionnalité `` avancée '' qui devrait être laissée de côté jusqu'à ce que l'utilisateur ait l'expérience pour savoir comment l'activer.

Mark Booth
la source