Kihagyás

Lokális környezet beállítása

1. Előfeltételek

  • Git telepítés
    • Windows operációs rendszer esetén a Git Bash telepítése is szükséges.

2. Git konfigurálása

A Git konfigurációs fájl operációs rendszertől függően a {user-mappa}/.gitconfig útvonalon elérhető.

Pl.: Windows operációs rendszer esetén c:\users\Példa Béla\.gitconfig / macOS operációs rendszer esetén /Users/pelda.bela/.gitconfig.

Nem létező .gitconfig fájl esetén

Előfordulhat, hogy még nincs .gitconfig fájl a gépünkön, ilyenkor nem kell megijedni, az alábbi parancsok kiadása után a Git konfigurációs fájl automatikusan létrejön.

git config --global pull.rebase true
git config --global core.autocrlf input

Windows operációs rendszer esetén a git clone parancs kiadása során belefuthatunk a következő hibába: Filename too long.

Ezen probléma megoldása érdekében Git Bash-ből adjuk ki az alábbi parancsot:

git config core.longpaths true

3. SSH kulcs használata GitLab-bal

Ahhoz, hogy biztonságos módon tudjunk kommunikálni a távoli GitLab szerverrel, SSH kulcsot használunk az authentikációhoz.

Ennek előnye, hogy nem kell minden egyes GitLab szervert érintő git művelet esetén megadnunk a felhasználónév/jelszó párosunkat.

3.1 SSH kulcspár létrehozása

Amennyiben még nem rendelkezünk SSH kulcspárral hozzunk létre egy újat.

  1. Nyissuk meg a Git Bash terminálunkat.
  2. Hozzuk létre a kulcspárt az alábbi paranccsal:

    ssh-keygen -t ed25519 -C "vezetéknév.keresztnév@intuitech.studio"
    

    RSA kulcspár generálása

    Régebbi rendszereknél előfordulhat, hogy még nem támogatják az ED25519 algoritmust. Ebben az esetben használhatjuk az alábbi parancsot RSA kulcspár generálásához:

    ssh-keygen -t rsa -b 2048 -C "vezetéknév.keresztnév@intuitech.studio"
    
  3. Miután kiadtuk a parancsot az alábbihoz hasonló üzenetet kell kapnunk:

    Generating public/private ed25519 key pair.
    Enter file in which to save the key (/home/user/.ssh/id_ed25519):  
    
    Nyomjunk „Enter“-t.

Az elkészült kulcspárt a felhasználó mappánk alatti .ssh mappában találjuk meg.

3.2 SSH kulcs hozzáadása a GitLab-hoz.

Ahhoz, hogy az előzőekben generált SSH kulcspárunkat használni tudjuk a GitLab-bal, a publikus kulcsunkat fel kell másolnunk a GitLab accountunkba.

  1. Másoljuk a publikus kulcs tartalmát a vágólapra. Ezt megtehetjük kézzel is, de az alábbi scripttel is:

    Git Bash-t használva adjuk ki az alábbi parancsot:

    cat ~/.ssh/id_ed25519.pub | clip
    

    Terminálból adjuk ki az alábbi parancsot:

    cat ~/.ssh/id_ed25519.pub | pbcopy
    

  2. Jelentkezzünk be a GitLab-ba.

  3. A fejléc jobb felső sarkában kattintsunk az avatárunkra, majd válasszuk ki a Preferences opciót.
  4. A bal oldalon válasszuk ki az SSH Keys opciót.
  5. A Key dobozba másoljuk be a publikus kulcsunkat. Ügyeljünk arra hogy a publikus kulcs teljes tartalmát bemásoljuk!
  6. A Title mezőben adjunk nevet a kulcsnak Pl.: „Munkahelyi laptop“.
  7. (Opcionális) Az Expiration date mezőben megadhatunk lejárati dátumot a kulcsnak. Ha üresen hagyjuk akkor nem fog sosem lejárni.
  8. Kattintsunk az Add key gombra.

3.3 Teszteljük a kapcsolatot

  1. Adjuk ki Git Bash-ben az alábbi parancsot:
    ssh -T git@gitlab.com
    
  2. Az első alkalommal az alábbihoz hasonló üzenetet kapunk:

    The authenticity of host 'gitlab.com (35.231.145.151)' can't be established.
    ECDSA key fingerprint is SHA256:HbW3g8zUjNSksFbqTiUWPWg2Bq1x8xdGUrliXFzSnUw.
    Are you sure you want to continue connecting (yes/no)? yes
    Warning: Permanently added 'gitlab.com' (ECDSA) to the list of known hosts.
    
    Írjuk be hogy yes majd üssünk „Enter“-t.

  3. Ezt követően ha újra kiadjuk az alábbi parancsot:

    ssh -T git@gitlab.com
    
    Akkor a ha mindent jól csináltunk a Welcome to GitLab, @username! message. üzenetet kell kapnunk.

    Amennyiben nem működik az SSH kulcsunk

    Előfordulhat, hogy valamiért a fenti lépések végrehajtását követően sem működik az ssh kulcsunk. Ekkor, ha azt látjuk, hogy nem jön létre automatikusan az .ssh mappába a known_hosts fájl, akkor adjuk ki az alábbi parancsot:

    ssh-keyscan -t ed25519 gitlab.com >> ~/.ssh/known_hosts    
    

GitLab és SSH

A GitLab SSH kulcsokkal történő használatáról bővebben olvashatsz itt.