Empecé a usar la extensión HgGit para mercurial para tener una copia del repositorio en GitHub. Casi todo está funcionando bien, pero en la información de commit en GitHub veo invalid-email-address (author)
en lugar de mi nombre de usuario. ¿Hay alguna forma de mostrar el nombre de usuario correctamente en este caso?HgGit: "dirección de correo electrónico no válida" en GitHub
Respuesta
Un nombre de usuario en Mercurial suele ser de la forma:
Name <[email protected]>
Git también normalmente se configura con un nombre y una dirección de correo electrónico para el usuario.
Supongo que probablemente necesite especificar una dirección de correo electrónico en su nombre de usuario en su configuración de Mercurial para que el nombre de usuario en las confirmaciones funcione correctamente en github.
No es necesario que este nombre de usuario sea igual a su nombre de usuario en ningún sitio web en particular, es para información de compromiso. Si se requiriese que fuera el mismo, ¿cómo podría alguna vez ser capaz de impulsar conjuntos de cambios hechos por otra persona?
Por ejemplo, mi bitbucket nombre de usuario es diferente a mi nombre de usuario Mercurial en mis confirmaciones, y la forma en que mantener mi nombre de usuario y contraseña bitbucket fuera de los caminos Bitbucket en la repo hgrc
es utilizar la sección [auth]
de mi usuario .hgrc
/Mercurial.ini
:
[auth]
bb.prefix = bitbucket.org
bb.schemes = https
bb.username = myBBusername
bb.password = myBBpassword
Poner aquí la contraseña es opcional (se le pedirá), pero hay alternativas más seguras para su almacenamiento, tales como la extensión keyring.
Sin embargo, es un poco tarde para cambiar el nombre de usuario en los conjuntos de cambios existentes (tendrías que volver a escribir el historial completo del repositorio).
Para solucionar el problema de "dirección de correo electrónico no válida", debe buscar los "nombres de autor de git" anteriores en commits y establecer nuevos nombres y direcciones de correo electrónico del "Autor" y "Committer" para los commits antes empuja el repositorio recién convertido a GutHub.
Esta corrección (buscar y reemplazar ...) se realiza mediante el comando "git filter-branch". Puede ver aquí el ejemplo listo para usar: (¿ahora está muerto ?!) Mercurial to Git, solving "invalid-email-address"
[Editado:] Como el enlace anterior está muerto, proporciono mi ejemplo del archivo "fix-user-email.sh" abajo. Como yo puede ver, aquí dos variantes de un nombre de autor están siendo traducidos a la misma validez par nombre GIT/e-mail:
git filter-branch --env-filter '
an="$GIT_AUTHOR_NAME"
am="$GIT_AUTHOR_EMAIL"
cn="$GIT_COMMITTER_NAME"
cm="$GIT_COMMITTER_EMAIL"
if [ "$GIT_AUTHOR_NAME" = "peter.pen" ]
then
cn="peterpen"
cm="[email protected]"
an="peterpen"
am="[email protected]"
fi
if [ "$GIT_AUTHOR_NAME" = "peterpen" ]
then
cn="peterpen"
cm="[email protected]"
an="peterpen"
am="[email protected]"
fi
export GIT_AUTHOR_NAME="$an"
export GIT_AUTHOR_EMAIL="$am"
export GIT_COMMITTER_NAME="$cn"
export GIT_COMMITTER_EMAIL="$cm"
'
personalmente ejecutan los comandos procedentes de la etapa página mencionada a paso en la ventana de fiesta cygwin (de hecho, me encontré/modificado/re-corrió una secuencia de comandos con el fin de simplificar mi vida, por supuesto :-)) y comprobar los resultados usando GIT-GUI ...
Cuando esté listo para poner a prueba repositorio en GitHub,
- Crear nuevo repositorio en GitHub y no hacer nada con él!
- Envíe el repositorio convertido al Git Hub. Si algo no está bien aún, elimine el repositorio de GitHub y vuelva a crear el repositorio con el mismo nombre ...
Ese enlace está muerto –
Hice la transferencia de código desde el repositorio de mercurial a github y sin actualizar de GIT_COMMITTER_NAME y GIT_COMMITTER_EMAIL (además de GIT_AUTHOR_NAME y GIT_AUTHOR_EMAIL) Recibo dirección de correo electrónico no válida para todas las confirmaciones en la página de commits en github –
- 1. ¿Expresión válida de la dirección de correo electrónico?
- 2. dirección de correo electrónico noreply.
- 3. validar la dirección de correo electrónico en UITextField en iPhone
- 4. claves Gitosis y ssh: ¿la dirección de correo electrónico tiene algo que ver con la dirección de correo electrónico git?
- 5. RoR delinear: sign_in siempre devuelve correo electrónico/contraseña no válida
- 6. CakePHP - ¿El método de utilidad para verificar una cadena es una dirección de correo electrónico válida?
- 7. Verificar que una dirección de correo electrónico sea válida como una cuenta de google
- 8. ¿Cómo comprobar si una dirección de correo electrónico es falsa?
- 9. ¿Cómo verifico si una dirección de correo electrónico es válida sin enviarle nada?
- 10. compruebe que la dirección de correo electrónico es válida para System.Net.Mail.MailAddress
- 11. dirección de correo electrónico normal en 2 partes
- 12. Cómo copiar la dirección de correo electrónico en outlook 2007
- 13. postfix: envíe una copia de cada correo electrónico a una dirección de correo electrónico dada
- 14. Cómo verificar que realmente exista una dirección de correo electrónico enviando un correo electrónico a java
- 15. ¿Puede haber un apóstrofo en una dirección de correo electrónico?
- 16. Dirección de correo electrónico faltante intermitente en Facebook API
- 17. verificar una dirección de correo electrónico existen en C#
- 18. Validar la dirección de correo electrónico en UITextField
- 19. django-registration no puede establecer la dirección de correo electrónico "de" para el correo electrónico de autenticación
- 20. Solicitud dirección de correo electrónico del proveedor de OpenID
- 21. Validación de dirección de correo electrónico para ASP.NET
- 22. Cambiando las notificaciones de Drupal dirección de correo electrónico
- 23. Git: configuración de nombre y dirección de correo electrónico
- 24. Control .NET como Outlook Dirección de correo electrónico Texto Control
- 25. ¿Cómo puedo obtener la dirección de correo electrónico
- 26. Acceder a contactos y obtener la dirección de correo electrónico
- 27. Ocultando la dirección de correo electrónico con jQuery
- 28. Html.La etiqueta para mostrar la dirección de correo electrónico
- 29. Identificar si una dirección de correo electrónico es 'pública'
- 30. cómo cambiar la dirección de correo electrónico predeterminada para postfix?
¿Cuál es el formato de su nombre de usuario en 'hgrc' /' Mercurial.ini'? –
Es solo "chersanya", según sea necesario para Google Code (el repositorio principal está allí). – aplavin