2017-06-11 5 views
1

J'ai fait un commit que j'ai dû annuler sur mon serveur parce que ça ne fonctionnait pas. Je l'ai fait "hg revenir --all --rev 855" et dépouillé mes changements de mon Bitbucket et mon local. Quand j'ai fait "hg update" et essayé de tirer les prochaines modifications, j'ai fait "abort: crosses branches (utiliser 'hg merge' pour fusionner ou utiliser 'hg update -C' pour annuler les modifications)"Comment annuler une validation en utilisant "hg revert"?

Comment Je continue avec juste les changements voulus et perd les commits/têtes?

+0

Pourquoi cela est-il posté avec une balise "git"? Dans tous les cas, 'hg revert' signifie" remettre les fichiers à un état antérieur ", pas" annuler une validation ". C'est généralement une mauvaise idée d'essayer de supprimer ('hg strip') un commit publié entièrement; à la place, vous voulez généralement ajouter un nouveau commit qui inverse l'effet d'un commit précédent, ce qui est fait dans mercurial avec 'hg backout'. – torek

Répondre

1

Vous voulez faire un backout pas un revert. Tout d'abord, nettoyer votre répertoire de travail en supprimant les fichiers non engagés:

hg revert -a 

Ensuite, retirer la problématique commettras utilisant backout:

hg backout -r 855 

Vous serez invité à entrer un message de validation. Enregistrez-le et vous êtes prêt à partir.