J'essaie de m'engager dans un projet sur github.com depuis mon ordinateur portable de travail, qui est déjà configuré pour le serveur git de l'entreprise. Existe-t-il un moyen de valider en spécifiant différentes informations d'identification d'auteur, possible en utilisant un fichier de configuration différent ou d'autres commutateurs de ligne de commande?
J'ai essayé d'utiliser
--author="My Name <[email protected]>"
et j'ai reçu le message:
Committer: unknown <[email protected]>
Your name and email address were configured automatically based
on your username and hostname. Please check that they are accurate.
You can suppress this message by setting them explicitly:
git config --global user.name "Your Name"
git config --global user.email [email protected]
After doing this, you may fix the identity used for this commit with:
git commit --amend --reset-author
mais il n'a toujours pas mis à jour mon nom d'utilisateur pour m'engager dans le projet github.com. Y a-t-il autre chose que je puisse essayer et est-ce même possible?
-c user.name=Me [email protected]
. Pour utiliser une configuration globale personnalisée, consultez cette question ou utilisez un alias de shell contenant des-c
options. Mais aucun de ces éléments n'est probablement la bonne chose à faire dans cette situation - vous voulez une configuration par dépôt.{author,committer}.{name,email}
. Voir ma réponse ciRéponses:
Premièrement, l'auteur n'est pas nécessairement le même que l'auteur de l'infraction. Git suit les deux.
Pour définir le nom à utiliser uniquement pour ce référentiel, vous pouvez faire:
Notez l'absence de l'
--global
option. Cela définira la configuration dans ce référentiel uniquement.Vous pouvez également le faire pour une seule commande, en utilisant l'
-c
option:Mais je pense qu'il est préférable d'utiliser simplement les options de configuration ci-dessus.
la source
Essayez de l'ajouter à votre commande git:
C'est correct pour un one-shot, mais vous pouvez préférer enregistrer ceci dans le fichier .git / config du dépôt local que vous avez cloné à partir de git. Cela peut être fait en exécutant
git config
(pas de --global ou --system pour le rendre "local au dépôt") ou en éditant le.git/config
(c'est la même syntaxe que~/.gitconfig
la source
.bash_aliases
, et / ou vous pouvez également définir un hook de pré-validation pour rejeter la validation lorsque l'utilisateur n'est pas défini.Vous pouvez également définir des variables d'environnement
GIT_COMMITTER_NAME
,GIT_COMMITTER_EMAIL
,GIT_AUTHOR_NAME
etGIT_AUTHOR_EMAIL
sur un par-shell ou même par-commande base.la source
git commit --amend
. Seul le commiter a changé.git commit --amend --author="$GIT_COMMITTER_NAME <$GIT_COMMITTER_EMAIL>"
git commit --amend
par conception ne modifie pas l'auteur, comme le dit la page de manuel. Solution:git commit --amend --reset-author
Je crois que vous pourriez courir:
pour différentes parties de git. Essayez d'ouvrir le dossier dans lequel le travail est effectué pour le dépôt sur le serveur github.
Assurez-vous que vous voyez un dossier .git dans ce dossier de travail. Ouvrez maintenant ce dossier dans Terminal / Console / CommandPrompt et essayez de changer le nom d'utilisateur et l'e-mail de ce dossier uniquement en exécutant les commandes que j'ai spécifiées ci-dessus.
En modifiant cela, vous pourrez désormais accéder au serveur GitHub.
Jetez un coup d' oeil ici: https://help.github.com/articles/setting-your-username-in-git
De plus, je pense qu'il existe un moyen de pousser vers un dépôt distant en utilisant votre nom d'utilisateur et votre mot de passe github dans la commande elle-même, mais je ne le cite pas car cela n'a pas fonctionné pour moi.
la source
Suite à la réponse de Jesse Glick ici avec une implémentation étendue parce que l'OMI sa suggestion est la meilleure façon de procéder.
Ajoutez ce qui suit à votre .bash_profile. Il vous demandera un utilisateur lors de la première exécution d'une commande git dans le shell actif. Il se souviendra alors de l'utilisateur pour toutes les exécutions suivantes.
(évidemment, faites une référence croisée à une valeur utilisateur d'entrée pour obtenir les noms et adresses e-mail souhaités exacts pour les différentes valeurs git auther / name dans le bloc case et mettez à jour les attributions si nécessaire)
la source
En fait, depuis Git 2.22 (Q2 2019), vous avez une nouvelle option: quatre nouvelles variables de configuration
{author,committer}.{name,email}
ont été introduites pour remplaceruser.{name,email}
dans des cas plus spécifiques.Voir commit 39ab4d0 (04 février 2019) par William Hubbs (``) .
(Fusionné par Junio C Hamano -
gitster
- dans commit 4e021dc , 07 mars 2019)la source