Vezérlőpult
2. Telepítés és első beállítás · Alapok és munkakörnyezet

1. témakör · Alapok és munkakörnyezet · 2. fejezet

Telepítés és első beállítás

Feltelepítjük a Git for Windows csomagot és a GitHub Desktopot, majd elvégezzük azokat a beállításokat, amelyek nélkül a Git nem enged commitolni. Közben megismerjük a git config parancsot és a beállítások három szintjét.

CLI + DesktopTelepítő-szimulátorConfig-építő15 kvízkérdés7 feladat

Tanulási célok

1Mit telepítünk?

A tananyagban három programot használunk. Mindhárom ingyenes.

ProgramMit tartalmaz?Honnan?
Git for Windows CLI Maga a Git (a git parancs), a Git Bash terminál, a Git Credential Manager (a GitHub-bejelentkezés tárolója) és egy egyszerű grafikus felület, a Git GUI. git-scm.com
GitHub Desktop Desktop Grafikus Git-kliens a GitHub készítőitől. Saját, beépített Gitet használ. desktop.github.com
Visual Studio Code Desktop Kódszerkesztő beépített Git-támogatással és terminállal. A Git szövegszerkesztőjének is ezt állítjuk be. code.visualstudio.com
⚠️ A GITHUB DESKTOP NEM ELÉG

A GitHub Desktop a saját, beépített Gitjét használja, amely a parancssorból nem érhető el. Ha csak a GitHub Desktopot telepíted, a PowerShellben a git parancs ismeretlen marad. A parancssorhoz mindenképpen kell a Git for Windows.

ℹ️ MACOS ÉS LINUX

macOS-en a Git az Xcode parancssori eszközeivel érkezik (xcode-select --install), Linuxon a csomagkezelőből telepíthető (pl. sudo apt install git). A GitHub Desktop macOS-re is létezik. A tananyag Windowsra készült, de a git parancsok mindenhol ugyanazok.

2A Git for Windows telepítése

  1. Nyisd meg a git-scm.com oldalt, és válaszd a Download for Windows lehetőséget. A letöltött fájl neve valami ilyesmi lesz: Git-2.5x.y-64-bit.exe.
  2. Indítsd el a telepítőt. A C:\Program Files\Git mappába telepít, ezért rendszergazdai jogot kér.
  3. Végigkattintasz kb. 15 lépésen. A legtöbbnél jó az alapértelmezés, de néhány helyen érdemes mást választani. Ezeket foglalja össze az alábbi táblázat.

Aki szereti a parancssort, a Windows beépített csomagkezelőjével, a winget-tel is telepítheti (ekkor minden lépésnél az alapértelmezés érvényes):

PS> winget install --id Git.Git -e --source winget

A telepítő fontos lépései

Lépés (angolul)Mit válassz?Miért?
Choosing the default editor used by GitUse Visual Studio Code as Git's default editorAz alapértelmezett Vim-ben kezdőként könnyű „beragadni”.
Adjusting the name of the initial branch in new repositoriesOverride the default branch name… → mainÍgy az új repók fő ága main lesz, ahogy a GitHubon is.
Adjusting your PATH environmentGit from the command line and also from 3rd-party software (Recommended)Így a git parancs a PowerShellből és a VS Code-ból is elérhető.
Choosing the SSH executableUse bundled OpenSSH (alapértelmezés)A Git a saját SSH-programját használja.
Choosing HTTPS transport backendUse the OpenSSL library (alapértelmezés)Ha a hálózat saját tanúsítványt használ (iskola, cég), a Windows Secure Channel a jobb választás.
Configuring the line ending conversionsCheckout Windows-style, commit Unix-style line endingsWindowson ez a helyes sorvégkezelés (lásd a 7. szakaszt).
Configuring the terminal emulator to use with Git BashUse MinTTY (alapértelmezés)Kényelmesebb terminálablak a Git Bashhez.
Choose the default behavior of git pullFast-forward or merge (alapértelmezés)A legegyszerűbb, legbiztonságosabb viselkedés (18. fejezet).
Choose a credential helperGit Credential Manager (alapértelmezés)Ez tárolja biztonságosan a GitHub-bejelentkezést (16. fejezet).

Telepítő-szimulátor

Kattints végig a Git telepítőjének fontos lépésein! Minden lépésnél válassz, és a program megmondja, jól döntöttél-e. A végén összesítést kapsz.

Git 2.5x Setup

3Ellenőrzés: git --version

A telepítés után nyiss egy új terminált, és kérdezd le a Git verzióját. Ha kiírja, a telepítés sikerült, és a git parancs elérhető:

PS C:\Users\anna> git --version
git version 2.5x.y.windows.1

A pontos verziószám nálad más lehet. A Gitből néhány havonta jelenik meg új kiadás.

A git parancsot több terminálból is kiadhatod. Mindegyikben ugyanaz a Git fut:

TerminálHogyan nyitom meg?Megjegyzés
PowerShellStart menü → „PowerShell”, vagy a Windows TerminalA Windows alapértelmezett parancssora; a tananyag példái főleg ebben készülnek.
Git BashStart menü → „Git Bash”, vagy jobb klikk egy mappán → Open Git Bash hereLinux-szerű parancsok (ls, cd, touch); a Git for Windows része.
VS Code terminálVS Code-ban Ctrl + ö, vagy Terminal → New TerminalKényelmes: a szerkesztő mellett, a projekt mappájában nyílik meg.
💡 SÚGÓ

A git help <parancs> (például git help config) megnyitja a parancs teljes leírását a böngészőben. A git config -h rövid összefoglalót ír ki a terminálba. A 3. fejezetben részletesebben is megnézzük a parancssor használatát.

4A beállítások három szintje

A Git beállításait a git config paranccsal kérdezzük le és módosítjuk. Minden beállítás egy kulcs–érték pár, például user.name = Kovács Anna. A beállítások három szinten, három különböző fájlban lehetnek:

--system a gép összes felhasználójára C:\Program Files\Git\etc\gitconfig --global a bejelentkezett felhasználó összes repójára C:\Users\anna\.gitconfig --local csak ez az egy repó (ez az alapértelmezés) C:\projektek\webshop\.git\config Ha egy kulcs több szinten is szerepel, a legbelső (legszűkebb) szint érvényes. erősebb gyengébb
A három szint egymásba ágyazódik. A local szint felülírja a global szintet, a global pedig a system szintet.

Melyik szintre írnád?

Döntsd el, melyik szinten érdemes megadni a beállítást!

1 / 8Pontszám: 0
…

5A kötelező beállítás: név és e-mail

Minden commit rögzíti a szerzőjét: a nevét és az e-mail címét. A Git ezeket a user.name és user.email beállításból veszi. Amíg ezeket nem adod meg, a Git nem enged commitolni. Ezért ez az első dolog, amit egy új gépen beállítunk:

PS> git config --global user.name "Kovács Anna"
PS> git config --global user.email "kovacs.anna@pelda.hu"

Ha kimarad a beállítás, az első commitnál ezt az üzenetet kapod:

PS> git commit -m "Első változat"
Author identity unknown

*** Please tell me who you are.

Run

  git config --global user.email "you@example.com"
  git config --global user.name "Your Name"

to set your account's default identity.
Omit --global to set the identity only in this repository.

fatal: unable to auto-detect email address (got 'diak@GEP07.(none)')

A Git itt pontosan megmondja, mit kell tenni: „Mondd meg, ki vagy!”, és felsorolja a két parancsot is.

A beállítás lekérdezése

PS> git config user.name
Kovács Anna
PS> git config --global --list
user.name=Kovács Anna
user.email=kovacs.anna@pelda.hu
init.defaultbranch=main
core.editor=code --wait
⛔ JELSZÓ NEM KELL IDE

A git config-ban nincs user.password, github.token vagy ssh.key beállítás. A név és az e-mail csak címke a commiton, nem bejelentkezés. A GitHubra való belépést a Git Credential Manager intézi, amikor először töltesz fel valamit (16. fejezet).

Config-építő

Töltsd ki az adataidat. Az oldal elkészíti a beírandó parancsokat, és megmutatja, mi kerül a .gitconfig fájlba. A parancsokat a saját gépeden a Másolás gombbal viheted át a terminálba.

Parancsok

        
.gitconfig

      

6Ajánlott beállítások

Ha a telepítőben az ajánlottakat választottad, ezek már be vannak állítva. Egy másik gépen (vagy ha kihagytad) így adhatod meg őket:

# az új repók első ága main legyen (ne master)
PS> git config --global init.defaultBranch main

# a Git a VS Code-ot nyissa meg, ha szöveget kell szerkeszteni (pl. commitüzenetet)
PS> git config --global core.editor "code --wait"

# Windowson: sorvégek átalakítása (lásd a következő szakaszt)
PS> git config --global core.autocrlf true

Hasznos lekérdezések

ParancsMit csinál?
git config --listAz összes érvényes beállítás, minden szintről.
git config --list --show-originUgyanez, és mindegyik mellé kiírja, melyik fájlból jön.
git config user.emailEgyetlen kulcs aktuális értéke.
git config --global --editMegnyitja a globális beállítófájlt a szerkesztőben.
git config --global --unset core.editorTöröl egy beállítást.
PS> git config --list --show-origin
file:C:/Program Files/Git/etc/gitconfig    core.autocrlf=true
file:C:/Program Files/Git/etc/gitconfig    credential.helper=manager
file:C:/Users/anna/.gitconfig              user.name=Kovács Anna
file:C:/Users/anna/.gitconfig              user.email=kovacs.anna@pelda.hu
file:C:/Users/anna/.gitconfig              init.defaultbranch=main

A globális fájl egyszerű szöveges fájl, Jegyzettömbbel is megnyitható. Így néz ki:

# C:\Users\anna\.gitconfig
[user]
	name = Kovács Anna
	email = kovacs.anna@pelda.hu
[init]
	defaultBranch = main
[core]
	editor = code --wait

A kulcs első része (user) a szakasz neve szögletes zárójelben, a második része (name) a szakaszon belüli sor.

ℹ️ ÚJABB ÍRÁSMÓD

Az újabb Git-verziók alparancsokat is ismernek: git config set, git config get, git config list. A tananyagban a klasszikus formát használjuk, mert az minden verzióban működik, és a leírások többsége is így írja.

7Sorvégek: CRLF és LF

Amikor Entert nyomsz egy szövegfájlban, láthatatlan sorvége-karakter kerül a fájlba. A Windows és a Unix-alapú rendszerek (Linux, macOS) ezt másképp jelölik:

Windows készCR\rLF\n CRLF — 2 karakter
Linux / macOS készLF\n LF — 1 karakter

Ha egy csapatban vegyesen használnak Windowst és macOS-t, és mindenki a saját sorvégeit menti, a Git úgy látja, hogy minden sor megváltozott, pedig csak a láthatatlan karakter más. Ezt előzi meg a core.autocrlf beállítás:

ÉrtékCommitkor (a tárolóba)Kicsekkoláskor (a munkamappába)Kinek való?
trueCRLF → LFLF → CRLFWindows (a telepítő ajánlása)
inputCRLF → LFnem alakítmacOS, Linux
falsenem alakítnem alakítcsak ha tudod, miért

Az eredmény: a tárolóban mindig LF van, a Windowsos gépeden pedig CRLF, ahogy a Windowsos programok megszokták. Emiatt néha ilyen figyelmeztetést látsz, ami nem hiba:

warning: in the working copy of 'index.html', LF will be replaced by CRLF the next time Git touches it
💡 CSAPATBAN

Csapatmunkában a legbiztosabb, ha a repóba bekerül egy .gitattributes fájl ezzel a sorral: * text=auto. Ekkor a sorvégkezelés mindenkinél egyforma lesz, bárhogy is állította be a saját gépét.

8A GitHub Desktop telepítése

  1. Töltsd le a desktop.github.com oldalról, és indítsd el. A telepítés nem kérdez semmit, és rendszergazdai jog sem kell hozzá: a program a saját felhasználói mappádba kerül. (winget-tel: winget install --id GitHub.GitHubDesktop -e)
  2. Az első indításkor a Welcome képernyő bejelentkezést kér: Sign in to GitHub.com. Ha még nincs GitHub-fiókod, válaszd a Skip this step lehetőséget. A fiókot a 4. fejezetben hozzuk létre, és utána bejelentkezhetsz.
  3. A Configure Git lépésben a program a nevedet és az e-mail címedet kéri. Ez ugyanaz a user.name és user.email: a GitHub Desktop is a globális .gitconfig fájlba írja. Ha a parancssorból már beállítottad, itt a te adataidat látod.

Később a File → Options menüben (Ctrl + ,) módosíthatod a beállításokat. A legfontosabb fülek:

Options
  • Accounts
  • Integrations
  • Git
  • Appearance
  • Notifications
  • Prompts
  • Advanced
Name
Kovács Anna
Email
kovacs.anna@pelda.hu
Default branch name for new repositories
main master Other…

These preferences will edit your global Git config file.

FülMit állíts be?
AccountsBejelentkezés a GitHub-fiókodba (a 4. fejezet után).
IntegrationsExternal editor: Visual Studio Code · Shell: PowerShell vagy Git Bash — így egy kattintással megnyithatod bennük a repót.
GitNév, e-mail, az új repók fő ága (main). Ugyanaz, mint a git config --global.
AppearanceVilágos vagy sötét téma.
ℹ️ EGY GIT-BEÁLLÍTÁS, KÉT FELÜLET

A parancssor és a GitHub Desktop ugyanazt a C:\Users\<név>\.gitconfig fájlt olvassa és írja. Ha az egyikben módosítod a nevedet, a másikban is az új név jelenik meg.

9Közös, iskolai gépen

Az iskolai gépteremben előfordulhat, hogy többen is ugyanazzal a Windows-felhasználóval dolgoztok. Ilyenkor a --global beállítás a következő diáké is lesz, és a commitjai a te neveddel jelennek meg. Két jó megoldás van:

  1. Óra elején ellenőrizd (git config --global --list), és ha kell, írd át a saját adataidra.
  2. Még jobb, ha a nevet és az e-mailt csak a saját repódban állítod be, kapcsoló nélkül (--local):
    PS C:\projektek\sajat> git config user.name "Kovács Anna"
    PS C:\projektek\sajat> git config user.email "kovacs.anna@pelda.hu"
⛔ ÓRA VÉGÉN

Ha bejelentkeztél a GitHubra, a Git Credential Manager elmenti a belépésedet, és a következő diák a te nevedben tölthet fel. Óra végén jelentkezz ki: GitHub Desktopban File → Options → Accounts → Sign out, a böngészőben is jelentkezz ki. A Windows Hitelesítőadat-kezelőjében (Credential Manager) töröld a git:https://github.com bejegyzést. Ezt a 16. fejezetben részletesen is megnézzük.

10Gyakori hibák

Kattints a hibaüzenetre a magyarázatért és a megoldásért!

git : The term 'git' is not recognized as the name of a cmdlet…

Jelentése: a PowerShell nem találja a git programot. Magyar Windowson így szól: „A(z) git kifejezés nem parancsmag, függvény, parancsfájl vagy futtatható program neve.”

Megoldás: (1) Zárd be, és nyisd meg újra a terminált (a VS Code-ot is). A telepítés előtt megnyitott ablakok nem látják az új PATH-t. (2) Ha így sem megy, telepítsd újra a Gitet, és a PATH lépésnél a Recommended lehetőséget válaszd. (3) Ellenőrizd, hogy nem csak a GitHub Desktop van-e fent.

Author identity unknown *** Please tell me who you are.

Jelentése: nincs beállítva a user.name és/vagy a user.email.

Megoldás: add ki a két git config --global user… parancsot (5. szakasz), majd ismételd meg a commitot.

Commitkor megnyílt egy furcsa, fekete ablak, és nem tudok kilépni belőle (Vim)

Jelentése: a Git a Vim szerkesztőt nyitotta meg a commitüzenethez, mert nincs más szerkesztő beállítva.

Kilépés: nyomd meg az Esc billentyűt, írd be: :q!, majd Enter (kilépés mentés nélkül). Ha menteni is szeretnél: Esc, :wq, Enter.

Megoldás tartósan: git config --global core.editor "code --wait"

'code' is not recognized… — a VS Code nem nyílik meg szerkesztőként

Jelentése: a code parancs nincs a PATH-ban.

Megoldás: telepítsd újra a VS Code-ot, és pipáld be az Add to PATH lehetőséget, vagy a VS Code-ban Ctrl + Shift + P → Shell Command: Install 'code' command in PATH. Utána nyiss új terminált.

warning: in the working copy of '…', LF will be replaced by CRLF…

Jelentése: ez csak figyelmeztetés, nem hiba. A Git jelzi, hogy a core.autocrlf szerint át fogja alakítani a sorvégeket.

Teendő: nincs. Részletek a 7. szakaszban.

A commitjaim a GitHubon nem a profilképemmel, hanem szürke ikonnal jelennek meg

Jelentése: a user.email nem egyezik egyik, a GitHub-fiókodhoz tartozó e-mail címmel sem.

Megoldás: állítsd be a GitHub-fiókod e-mail címét (vagy a noreply címet, 4. fejezet). A már elkészült commitokon ez nem változtat, csak az újakon.

11Feladatok

Gyakorló feladatok

⭐ alap · ⭐⭐ haladó · ⭐⭐⭐ kihívás — a saját gépeden vagy az iskolai gépen dolgozz.

2.1⭐CLI

Telepítsd a Git for Windows csomagot a táblázatban ajánlott beállításokkal, majd egy új PowerShell-ablakban kérdezd le a verziót! Írd le a pontos kimenetet.

2.2⭐CLI

Állítsd be globálisan a nevedet, az e-mail címedet, az init.defaultBranch és a core.editor értékét! Ellenőrizd a git config --global --list paranccsal.

2.3⭐Desktop

Telepítsd a GitHub Desktopot (a bejelentkezést hagyd ki)! A File → Options → Git fülön milyen név és e-mail cím látszik? Miért éppen az?

2.4⭐⭐CLI

Futtasd a git config --list --show-origin parancsot! Melyik beállítás melyik fájlból jön? Keress legalább egyet, amelyet nem te adtál meg. Honnan származik?

2.5⭐⭐DesktopCLI

A GitHub Desktopban írd át a nevedet (pl. tegyél a végére egy pontot), majd a parancssorban kérdezd le a user.name értékét! Mit tapasztalsz? Utána állítsd vissza parancssorból, és nézd meg újra a Desktopban.

2.6⭐⭐

Írj egy legfeljebb hatlépéses útmutatót a géptermi gépekhez: mit ellenőrizzen és állítson be egy diák az óra elején, és mit tegyen az óra végén, hogy más ne dolgozhasson a nevében!

2.7⭐⭐⭐

Egy csapatban két diák Windowst, egy macOS-t használ. Melyik core.autocrlf értéket javasolnád az egyes gépeken, és mit ad hozzá ehhez egy .gitattributes fájl * text=auto sorral? Nézz utána a git help gitattributes leírásban!

12Önellenőrző kvíz

Ellenőrizd magad!

Az egyválasztós kérdéseknél kattints a válaszra. A többválasztósaknál jelöld be az összes helyeset, majd nyomd meg az Ellenőrzés gombot.

13Fogalomtár

FogalomJelentés
Git for Windowsa Git Windowsos telepítőcsomagja: git parancs + Git Bash + Git Credential Manager + Git GUI
Git BashLinux-szerű terminál Windowsra, a Git for Windows része
Git Credential Managera GitHub- (és más) bejelentkezéseket biztonságosan tároló segédprogram
GitHub Desktopgrafikus Git-kliens beépített Gittel; a parancssori gitet nem helyettesíti
PATHa mappák listája, ahol a Windows a begépelt parancsokat keresi
git configa Git beállításainak lekérdezése és módosítása
--system · --global · --locala beállítás szintje: a gép összes felhasználója · a saját felhasználód összes repója · csak az adott repó; a szűkebb az erősebb
.gitconfiga globális beállítások fájlja: C:\Users\<név>\.gitconfig
user.name, user.emaila commitok szerzőjének neve és e-mail címe — commitolás előtt kötelező megadni
core.editora szövegszerkesztő, amelyet a Git megnyit (pl. code --wait)
init.defaultBranchaz új repók első ágának neve (ajánlott: main)
CRLF · LFsorvége-jelölés: Windows (\r\n) · Linux/macOS (\n)
core.autocrlfa sorvégek automatikus átalakítása; Windowson true

14Összegzés

  1. A parancssorhoz a Git for Windows kell (git-scm.com); a GitHub Desktop kiegészíti, de nem helyettesíti.
  2. Telepítés után: git --version egy új terminálban.
  3. A beállítások szintjei: system ⊃ global ⊃ local — a szűkebb felülírja a tágabbat.
  4. Commitolás előtt kötelező: git config --global user.name "…" és git config --global user.email "…". Jelszót a config nem tárol.
  5. Ajánlott még: init.defaultBranch main, core.editor "code --wait", Windowson core.autocrlf true.
  6. A GitHub Desktop Options → Git fülén ugyanazokat a globális beállításokat látod és módosítod.

A következő fejezetben megtanulunk biztonságosan mozogni a parancssorban: mappák, útvonalak, fájlok.