2016-02-10 1 views
1

Avec Mercurial, je veux tirer tous signets de mon dépôt distant et les rebasage locaux commits de mon actuelle marque sur peut-être nouveau à distance commits de mon signet actuel.Comment tirer tous les marque-pages de Mercurial, mais seulement rebaser si le signet actuel a changé?

hg pull --rebase va tirer tous signets, mais généralement ne parvient pas à effectuer le rebasage correct - très probablement il va essayer de rebasage mes commits locaux sur un autre, sans aucun rapport signet pour lequel les nouveaux commits à distance avait été tiré.

hg pull -B <bookmark> --rebase sera seulement tirer mon signet actuel, mais donc obtenir le droit de rebasage.

Quelle (séquence de) commande (s) est nécessaire pour atteindre mon objectif?

+0

Vous empoisonnés par Git. Vous devez vous débarrasser d'une maladie et trouver votre propre Mercurial-way, peut-être - pas avec des signets pour la collaboration, mais d'une autre manière –

Répondre

1

Je pense, vous pouvez voir à hgremotenames extension, car il fournit plus Gitish simple de gérer les signets locaux + à distance, que le style par défaut Mercurial

+0

Merci, cela semble prometteur pour un utilisateur Git-empoisonné :) – mstrap

+0

@mstrap - mais je recommande encore de penser à propos de vieilles bonnes branches nommées avec, peut-être, [branches éloignées] (https://bitbucket.org/durin42/hg-remotebranches) (parent des noms de connexion) - ajoutées par les signets permettent une différenciation facile entre les arbres locaux et distants –