2016-07-05 2 views
1

Wenn ein Git-Repository mit einem [email protected]/project Fernbedienung und die ~/.ssh/config Datei (unter anderem) hat mit folgenden Eintrag:Welche Benutzer Git für die SSH-Authentifizierung verwenden

Host bitbucket.org 
    User tom 
    IdentityFile ~/.ssh/bitbucket.rsa 

Welche Benutzer Vorrang vor dem anderen hat (zB beim Aufruf von a fetch)?

+0

Sie haben den Benutzer mit dem 'git @' -Teil in der URL angegeben, so dass die Konfiguration für 'tom' überhaupt nicht verwendet wird. – poke

Antwort

1

Welcher Benutzer hat Vorrang vor dem anderen (z. B. beim Aufruf eines Abrufs)?

Dies ist in der Manpage ssh_config beschrieben:

ssh(1) erhalten Konfigurationsdaten aus den folgenden Quellen in der folgenden Reihenfolge:

  1. Befehlszeilenoptionen
  2. Benutzer-Konfiguration Datei (~/.ssh/config)
  3. systemweite Konfiguration f ile (/etc/ssh/ssh_config)

Dies bedeutet, dass die Befehlszeilen (Git remote git) verwendet.

+0

Beachten Sie, dass sich diese nicht auf den Benutzernamen, sondern nur auf die allgemeine Konfiguration beziehen. Git erfordert immer, dass Sie einen Benutzernamen mit SSH-Remote-URLs angeben, was immer zählt. 'ssh' wird dann nur diese Orte anschauen, um eine mögliche Konfiguration für diese' user @ host'-Kombination zu finden. – poke

+0

@poke Danke. Guter Punkt. Aber es ändert nichts daran, dass der Benutzer 'git' verwendet wird. – Jakuje

+0

Das stimmt; Aber aus den Gründen, die Sie beschrieben haben, wird dieser Benutzer nicht benötigt. – poke

-1

Wenn Sie eine Host-Datei wie in Ihrer Frage der Host-Datei wird den SSH-Schlüssel geladen wird und wird „überspringen Lese“ (nicht wirklich nur für klar zu machen), um die .ssh Ordner

In Ihrem Fall dieser Dateien wird die Standardkonfiguration für alle Benutzer auf dem System basierend auf ihrem Schlüssel festlegen.

+0

Ich sehe nicht, wie sich dies auf die "hosts" -Datei bezieht und wie die ~/.ssh/config auf alle Benutzer Einfluss haben soll. –

Verwandte Themen