Como você define o nome de usuário que o Mercurial usa para os compromissos?

StackOverflow https://stackoverflow.com/questions/1401803

  •  05-07-2019
  •  | 
  •  

Pergunta

Quando começo algo em mercurial assim:

hg commit -m "username question"

Eu vejo esta saída:

No username found, using 'WindowsVistaAdmin@ChunkyMonkey' instead

ChunkyMonkey é o meu nome de máquina do Windows e obviamente WindowsVistaAdmin é o usuário que estou assinado como nesta máquina.

Como posso definir o nome de usuário para algo mais respeitável ou, pelo menos, mais conciso?

Foi útil?

Solução

Na tua ~/.hgrc (*nix) ou mercurial.ini (Arquivo Windows):

[ui]
username = First Last <email@address.com>

(mercurial.ini é em C:\Documents and Settings\[username]\ para xp e inferior, C:\Users\[username]\ para Vista e superior. Você também pode correr hgtk userconfig Se você tem o Tortoisehg instalado e faça dessa maneira.)

Outras dicas

Você pode especificar seu nome de usuário na linha de comando diretamente, se quiser usar - -config. por exemplo

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

De fato, você pode substituir qualquer coisa no seu .hgrc neste comando. Basta olhar para o seu .hgrc e observar o formato:

[section]
key=val

que se traduz diretamente para

hg --config section.key=val

Informação de aqui:

Configurando um nome de usuário

Quando você tenta executar o comprometimento da HG pela primeira vez, não é garantido que seja bem -sucedido. A Mercurial registra seu nome e endereço com cada alteração que você compromete, para que você e outras pessoas mais tarde possam dizer quem fez cada alteração. A Mercurial tenta descobrir automaticamente um nome de usuário sensível para cometer a mudança. Ele tentará cada um dos seguintes métodos, em ordem:

  1. Se você especificar uma opção -u para o comando HG Commit na linha de comando, seguido por um nome de usuário, isso sempre recebe a maior precedência.
  2. Se você definiu a variável de ambiente HGUSER, isso será verificado em seguida.
  3. Se você criar um arquivo no seu diretório inicial chamado .hgrc, com uma entrada de nome de usuário, que será usada a seguir. Para ver como deve ser o conteúdo desse arquivo, consulte a seção chamada “Criando um arquivo de configuração mercurial” abaixo.
  4. Se você definiu a variável de ambiente de email, isso será usado a seguir.
  5. O Mercurial consultará seu sistema para descobrir o nome de usuário e o nome do host local e construirá um nome de usuário a partir desses componentes. Como isso geralmente resulta em um nome de usuário que não é muito útil, ele imprimirá um aviso se precisar fazer isso.

Se todos esses mecanismos falharem, o Mercurial falhará, imprimindo uma mensagem de erro. Nesse caso, ele não permitirá que você se comprometa até configurar um nome de usuário.

Você deve pensar na variável de ambiente HGUSER e na opção -u para o comando commit hg como formas de substituir a seleção padrão do Mercurial do nome de usuário. Para uso normal, a maneira mais simples e robusta de definir um nome de usuário para si mesmo é criando um arquivo .hGRC; Veja abaixo para obter detalhes.

Aqui está como meu Windows /users/xxx/mercurial.ini parece. Não preciso inserir nome de usuário ou senhas para nada. Parece que pode ser específico do repo. Eu tenho o Tortoisehg instalado, não tenho certeza se isso faz alguma diferença.

[ui]
username=mbroekhuis

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

Para quem tenta usar o HG Workbench

definições

enter image description here

Configurações globais do usuário

enter image description here

Editar arquivo

enter image description here

Salvar

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top