recherche

Maison  >  Questions et réponses  >  le corps du texte

github - Comment résoudre les conflits entre deux clés .ssh dans git

Actuellement j'utilise github et le gitlab de l'entreprise, et github correspond à mon numéro QQ, et gitlab correspond au compte de l'entreprise. Et je ne souhaite pas ajouter le compte de l'entreprise sur Github pour obtenir la clé.
Résolvez le problème : reportez-vous aux articles en ligne et écrivez le fichier de configuration localement

  # gitlab
Host gitlab.com
HostName gitlab.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/id_rsa(对应公司的账号)

# github
Host github.com
HostName github.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/id_rsa2(我的QQ号)

Description de la situation :
1. Le problème qui s'est produit est que le nom soumis par l'entreprise est en fait mes informations QQ, mais la clé SSH ajoutée sur gitlab a été générée par le compte correspondant de l'entreprise. (Je suppose que la logique est un peu déroutante)

2. J'ai vérifié la configuration locale cat ~/.gitconfig. Ce sont les informations correspondant à mon numéro QQ !

Question : Pourquoi la clé .ssh du compte de l'entreprise est-elle configurée sur gitlab, et les informations du compte QQ sont également affichées lors de la soumission du code ? Gitlab n'a-t-il pas de vérification des autorisations

阿神阿神2796 Il y a quelques jours625

répondre à tous(2)je répondrai

  • 为情所困

    为情所困2017-05-02 09:31:48

    Vous ne comprenez peut-être pas la différence entre push et commit

    push consiste à pousser la bibliothèque locale vers l'extrémité distante et nécessite une autorisation. sshkey est utilisé pour vérifier s'il existe une autorisation push
    commit sert simplement à soumettre les modifications localement à l'entrepôt local. Ce n'est pas requis. .gitconfigLe nom d'utilisateur et l'adresse e-mail qu'il contient ne sont que commit informations correspondant à l'auteur. Ils n'ont pas de fonctions de contrôle des autorisations et peuvent être spécifiés à volonté. Même si vous le changez en Steve Jobs, vous pouvez le soumettre <. 🎜>

    • Vous pouvez afficher la configuration du nom d'utilisateur du dépôt actuel git config user.name

    • Vous pouvez vérifier l'adresse e-mail et le nom d'utilisateur utilisés pour soumettre les commits historiques git log

    est votre configuration globale git. S'il n'y a pas de configuration distincte sous le projet, elle sera héritée du fichier de configuration ~/.gitconfig.

    Solution : Configurez-le séparément dans le projet d'entreprise

    cd repo_of_work
    git config user.name 公司用户名
    git config user.email 公司邮箱

    En fait, il est encore relativement facile de semer la confusion. Une fois qu'il y a un nouveau projet d'entreprise et que vous oubliez de configurer la messagerie de l'entreprise, une situation similaire se produira. chaque fois qu'il y a un nouveau projet, il n'y aura pas de configuration. Le nom d'utilisateur et l'e-mail ne peuvent pas être validés

    .

    répondre
    0
  • PHPz

    PHPz2017-05-02 09:31:48

    Conseils complémentaires affichés à l'étage

    $ git config -l
    $ git config --global -l 
    $ git config --global --unset user.name
    $ git config --global --unset user.email

    répondre
    0
  • Annulerrépondre