2 votes

Comment ignorer une branche mercuriale contenant des espaces ?

J'essaie d'utiliser hggit pour utiliser mercurial comme client d'un dépôt git.

Je ne peux pas pousser vers le dépôt git parce qu'un génie a créé une branche appelée GTS 170528 (notez l'espace).

Lorsque je pousse de hg vers git, j'obtiens l'erreur suivante :

dulwich.errors.RefFormatError: refs/heads/GTS 170528

Je ne peux que supposer que l'espace est le problème. Je suis conscient que vous ne pouvez pas vraiment renommer une branche hg.

Avez-vous une idée sur la façon d'obtenir que Mercurial l'ignore à la sortie, ou que git ne s'en soucie pas à l'entrée ?

0voto

arhak Points 1569

Le chemin le plus court serait de faire renommer la branche dans git, afin qu'elle soit conforme à git-check-ref-format

vous pouvez trouver votre même cas rapporté dans problèmes de dulwich , qui a donné lieu à un nouvelle émission pour hggit mais ce dernier n'aidera pas votre scénario

donc, comme dit, obtenir la branche git pour se conformer à check-ref-format

PS : à propos du renommage des branches Mercurial, gardez à l'esprit que les signets fonctionnent également pour la synchronisation hggit, et pas seulement les branches nommées.

0voto

Il s'agit d'un bug dans hg-git, et nous avons juste appliqué un correctif pour cela . Vous pouvez y remédier de plusieurs façons :

  • Mise à jour vers hg-git 0.10.0.

  • Fermez la branche incriminée :

     hg update "GTS 170528"
     hg commit -m "close branch with silly name" --close-branch
  • Si c'est un signet, renommez-le :

     hg bookmark --rename "GTS 170528" "GTS-170528"

Puisque Git ne suit pas réellement les branches, mais a simplement des marqueurs pointant vers elles, le simple fait de supprimer ou de modifier la branche ou le marqueur devrait permettre au push de réussir. Par conséquent, vous n'aurez pas besoin de changer réellement la branche des commits, et il suffit de suivre les instructions de la commande conseils sur la façon de renommer les branches suffira.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X