J’essaie de commettre des modifications en tant qu’utilisateur différent, mais je n’ai pas d’adresse électronique valide, la commande suivante ne fonctionne pas pour moi:
git commit --author="john doe" -m "some fix" fatal: No existing author found with 'john doe'
J’ai le même problème en essayant de commettre avec seulement une adresse email
git commit --author="[email protected]" -m "some fix" fatal: No existing author found with '[email protected]'
Sur les pages man de la commande commit, il est écrit que je peux utiliser le
standard AU Thor format
Pour l’option –author.
Où est ce format défini? qu’est-ce que A et U représentent? Comment puis-je m’engager pour un utilisateur différent avec uniquement un nom d’utilisateur ou un e-mail?
Le format d’auteur minimum requirejs, comme indiqué dans cette réponse SO , est
Name
Dans votre cas, cela signifie que vous voulez écrire
git commit --author="Name " -m "whatever"
Selon le commentaire de Willem D’Haeseleer, si vous n’avez pas d’adresse électronique, vous pouvez utiliser <>
:
git commit --author="Name <>" -m "whatever"
Comme écrit sur la page de manuel git commit
que vous avez liée, si vous fournissez quelque chose de moins que cela, elle est utilisée comme un jeton de recherche pour rechercher les commits précédents, en recherchant d’autres validations par cet auteur.
Le format spécifique est:
git commit --author="John Doe " -m "Impersonation is evil."
le
format standard AU Thor
Semble être défini comme suit: (pour autant que je sache, sans aucune garantie)
AU Thor = nom d’utilisateur requirejs
Si vous n’utilisez pas cette syntaxe exacte, git effectuera une recherche dans les commits existants et utilisera le premier commit contenant la chaîne fournie.
Exemples:
Seul nom d’utilisateur
Omettez l’adresse email explicitement:
git commit --author="John Doe <>" -m "Impersonation is evil."
Seulement email
Techniquement, ce n’est pas possible. Vous pouvez toutefois saisir l’adresse e-mail comme nom d’utilisateur et omettre explicitement l’adresse e-mail. Cela ne semble pas très utile. Je pense qu’il serait encore plus logique d’extraire le nom d’utilisateur de l’adresse e-mail, puis de l’utiliser comme nom d’utilisateur. Mais si vous devez:
git commit --author="[email protected] <>" -m "Impersonation is evil."
Je me suis heurté à cela en essayant de convertir un référentiel de mercurial en git. J’ai testé les commandes sur msysgit 1.7.10.
Format
AU Thor
signifie simplement que vous devez spécifier
FirstName MiddleName LastName
On dirait que les prénoms et les noms de famille sont facultatifs (peut-être que la partie avant le courrier électronique n’a pas de format ssortingct). Essayez, par exemple, ceci:
git commit --author="John " -m "some fix"
Comme le disent les médecins:
--author= Override the commit author. Specify an explicit author using the standard AU Thor format. Otherwise is assumed to be a pattern and is used to search for an existing commit by that author (ie rev-list --all -i --author= ); the commit author is then copied from the first such commit found.
Si vous n’utilisez pas ce format, git traite la chaîne fournie comme un modèle et essaie de trouver le nom correspondant parmi les auteurs des autres commits.
Juste compléter :
git commit –author = “[email protected]” -m “L’emprunt d’identité est mauvais.”
Dans certains cas, la validation échoue toujours et affiche le message suivant:
*** S’il te plaît, dis-moi qui tu es.
Courir
git config –global user.email “[email protected]” git config –global user.name “Votre nom”
pour définir l’identité par défaut de votre compte. Omettez –global pour définir l’identité uniquement dans ce référentiel.
fatal: impossible de détecter automatiquement l’adresse e-mail (obtenu xxxx)
Alors lancez simplement “git config”, puis “git commit”
Si vous vous engagez sur Github, vous n’avez pas besoin d’un véritable email que vous pouvez utiliser
Indépendamment de l’utilisation de Github ou non, vous voudrez probablement d’abord changer les détails de votre committer (sur Windows, utilisez SET GIT_...
)
GIT_COMMITTER_NAME='username' GIT_COMMITTER_EMAIL='[email protected]'
Ensuite, définissez l’auteur
git commit --author="username "
https://help.github.com/articles/keeping-your-email-address-private