Hoppa till innehåll

Logga in: HTTPS och SSH

  • Skillnaden mellan HTTPS och SSH, de två sätten att ansluta till GitHub.
  • Varför ditt lösenord till GitHub inte fungerar i Git.
  • Att ställa in inloggningen på din dator, så att git push fungerar.

Vem som helst kan klona ett publikt repository. Men för att skicka commits, eller läsa ett privat repository, måste GitGitEtt program som sparar versioner av filerna i ett projekt, så att man kan se vad som ändrats, gå tillbaka till tidigare versioner och arbeta flera samtidigt.Läs mer om Git visa GitHub att det är du. Det ställer du in en gång per dator.

Git kan ansluta till GitHub på två sätt. Adressen till repositoryt visar vilket:

Sätt Adressen ser ut så här Du loggar in med
HTTPS https://github.com/ditt-namn/resplan.git inloggning i webbläsaren, eller en token
SSH git@github.com:ditt-namn/resplan.git en SSH-nyckel på din dator

GitHub tar inte emot ditt vanliga lösenord i Git. Det har GitHub tagit bort av säkerhetsskäl. I stället används något av följande:

  • Git Credential Manager sköter inloggningen åt dig. Första gången öppnas webbläsaren och du loggar in på GitHub som vanligt. Sedan kommer Git ihåg det. Programmet ingår i Git for Windows.
  • En SSH-nyckel är ett par filer på din dator. Den ena, den privata nyckeln, lämnar aldrig datorn. Den andra, den publika nyckeln, lägger du in på GitHub. Programmet ssh-keygen som skapar nycklarna finns redan på macOS och Linux, och på Windows 10 och 11.
  • En personlig token (personal access token) är en lång kod som du skapar på GitHub och skriver in i stället för lösenordet. Den kan begränsas till ett enda repository och få ett slutdatum.

Kursen rekommenderar HTTPS på Windows, eftersom allt redan är installerat, och SSH på macOS och Linux, eftersom inget behöver installeras där. Båda sätten fungerar på alla tre systemen.

Så här ser det ut när en SSH-nyckel fungerar. ssh -T git@github.com provar anslutningen och svarar med ditt användarnamn:

Terminal
$ ssh -T git@github.com
Hi ditt-namn! You've successfully authenticated, but GitHub does not provide shell access.

Meddelandet betyder att GitHub känner igen dig. does not provide shell access betyder bara att du inte kan köra kommandon på GitHubs server, vilket du inte heller behöver.

Gör stegen för ditt system. Stegen följer GitHubs egna instruktioner, men kursen har inte kunnat prova dem med ett riktigt konto på varje system. Fungerar något inte som det står här, följ länkarna till GitHubs instruktioner.

1. Vilken adress är en SSH-adress?
Visa rätt svar
  • git@github.com:ditt-namn/resplan.git
2. Git frågar efter lösenord när du kör git push mot GitHub. Vad fungerar? (Välj alla som stämmer)
Visa rätt svar
  • Logga in med webbläsaren via Git Credential Manager
  • En personlig token från GitHub
3. Vilken av SSH-nycklarna lägger du in på GitHub?
Visa rätt svar
  • Den publika, filen som slutar på .pub: Den privata nyckeln lämnar aldrig din dator.

  • Git ansluter till GitHub med HTTPS (https://github.com/…) eller SSH (git@github.com:…).
  • GitHub tar inte emot ditt vanliga lösenord i Git.
  • Windows: HTTPS med Git Credential Manager, som loggar in via webbläsaren.
  • macOS och Linux: en SSH-nyckel. Den publika nyckeln läggs in på GitHub. Den privata lämnar aldrig datorn.
  • ssh -T git@github.com provar att SSH-nyckeln fungerar.