web-dev-qa-db-fra.com

Comment définissez-vous le nom d'utilisateur que Mercurial utilise pour les validations?

Lorsque je commets quelque chose dans Mercurial comme ceci:

hg commit -m "username question"

Je vois cette sortie:

No username found, using 'WindowsVistaAdmin@ChunkyMonkey' instead

ChunkyMonkey est le nom de ma machine Windows et évidemment WindowsVistaAdmin est l'utilisateur auquel je suis connecté comme sur cette machine.

Comment puis-je définir le nom d'utilisateur sur quelque chose de plus respectable, ou, au moins, plus concis?

75
tent

Dans votre ~/.hgrc (* nix) ou Mercurial.ini (Windows):

[ui]
username = First Last <[email protected]>

(Mercurial.ini est dans C:\Documents and Settings\[username]\ pour XP et moins, C:\Users\[username]\ pour Vista et versions supérieures. Vous pouvez également exécuter hgtk userconfig si vous avez installé TortoiseHg et faites-le de cette façon.)

111
tghw

vous pouvez spécifier votre nom d'utilisateur directement sur la ligne de commande si vous souhaitez utiliser --config. par exemple

hg --config ui.username=frymaster -m "comment here" commit

en fait, vous pouvez remplacer n'importe quoi dans votre .hgrc avec cette commande. regardez simplement votre .hgrc et notez le format:

[section]
key=val

qui se traduit directement par

hg --config section.key=val
27
frymaster

Informations de ici :

Configuration d'un nom d'utilisateur

Lorsque vous essayez d'exécuter hg commit pour la première fois, il n'est pas garanti de réussir. Mercurial enregistre votre nom et votre adresse à chaque modification que vous effectuez, afin que vous et d'autres personnes puissiez plus tard dire qui a effectué chaque modification. Mercurial essaie de trouver automatiquement un nom d'utilisateur raisonnable pour valider la modification. Il tentera chacune des méthodes suivantes, dans l'ordre:

  1. Si vous spécifiez une option -u à ​​la commande hg commit sur la ligne de commande, suivie d'un nom d'utilisateur, cela est toujours donné la priorité la plus élevée.
  2. Si vous avez défini la variable d'environnement HGUSER, ceci est vérifié ensuite.
  3. Si vous créez un fichier dans votre répertoire personnel appelé .hgrc, avec une entrée de nom d'utilisateur, il sera utilisé ensuite. Pour voir à quoi devrait ressembler le contenu de ce fichier, reportez-vous à la section intitulée "Création d'un fichier de configuration Mercurial" ci-dessous.
  4. Si vous avez défini la variable d'environnement EMAIL, elle sera utilisée ensuite.
  5. Mercurial interrogera votre système pour connaître votre nom d'utilisateur local et le nom d'hôte, et construira un nom d'utilisateur à partir de ces composants. Étant donné que cela se traduit souvent par un nom d'utilisateur qui n'est pas très utile, il affichera un avertissement s'il doit le faire.

Si tous ces mécanismes échouent, Mercurial échoue et affiche un message d'erreur. Dans ce cas, il ne vous permettra pas de vous engager tant que vous n'aurez pas configuré de nom d'utilisateur.

Vous devriez considérer la variable d'environnement HGUSER et l'option -u de la commande hg commit comme des moyens de remplacer la sélection par défaut de Mercurial de nom d'utilisateur. Pour une utilisation normale, la façon la plus simple et la plus robuste de définir un nom d'utilisateur pour vous-même est de créer un fichier .hgrc; voir ci-dessous pour plus de détails.

15
Andrew Flanagan

Voici à quoi ressemblent mes fenêtres /users/xxx/Mercurial.ini. Je n'ai rien à saisir de nom d'utilisateur ou de mot de passe. Il semble que cela puisse être spécifique au référentiel. J'ai tortoiseHG installé, je ne sais pas si cela fait une différence.

[ui]
username=mbroekhuis

[auth]
repo.prefix=http://myrepo
repo.username=mbroekhuis
repo.password=secret
2
Matt Broekhuis

Pour toute personne essayant d'utiliser l'établi HG

paramètres

enter image description here

paramètres globaux de l'utilisateur

enter image description here

Modifier le fichier

enter image description here

Sauver

1
kuhajeyan