Git este un sistem de control al versiunilor distribuite open source creat în 2005 de Linus Torvalds și alții din comunitatea de dezvoltare Linux. Git poate funcționa cu multe tipuri de proiecte, dar este cel mai frecvent utilizat pentru codul sursă al software-ului.

Controlul versiunilor este un sistem care ține evidența modificărilor aduse unui fișier sau unui grup de fișiere în timp. Când aveți un istoric al acestor modificări, acesta vă permite să găsiți versiuni specifice ulterior, să comparați modificările între versiuni, să recuperați fișierele pe care le-ați șters sau să reveniți la versiunile anterioare.

A distribuit sistemul de control al versiunilor înseamnă că diferiți utilizatori își păstrează propriile depozite ale unui proiect, în loc să lucreze dintr-un depozit central. Utilizatorii au automat capacități complete de urmărire a fișierelor și istoricul complet al versiunilor proiectului, fără a avea nevoie de acces la un server central sau la o rețea.

Când Git este inițializat într-un director de proiect, acesta începe urmărirea modificărilor fișierului și le stochează ca „seturi de modificări” sau „patch-uri”. Utilizatorii care lucrează împreună la un proiect își trimit seturile de modificări care sunt apoi incluse (sau respinse) în proiect.

Routech are un Lista de redare YouTube cu o mulțime de sfaturi practice Git și GitHub aici.

Cele mai bune tutoriale Git

Alte tutoriale:

  • Pro Git carte, scrisă de Scott Chacon și Ben Straub și publicată de Apress. Cartea este afișată integral în Documentație Git.
  • Pentru descărcări, documentație și un tutorial bazat pe browser: Site-ul oficial Git
  • Cele mai utile comenzi când vă aflați într-o situație GIT proastă: Oh, dracu!

Înțelegeți cele trei secțiuni ale unui proiect Git

Un proiect Git va avea următoarele trei secțiuni principale:

  1. Director Git
  2. Director de lucru (sau arborele de lucru)
  3. Zona de organizare

Director Git (situat în YOUR-PROJECT-PATH/.git/) este locul unde Git stochează tot ce are nevoie pentru a urmări cu precizie proiectul. Aceasta include metadate și o bază de date de obiecte care include versiuni comprimate ale fișierelor proiectului.

director de lucru este locul în care un utilizator face modificări locale la un proiect. Directorul de lucru extrage fișierele proiectului din baza de date a obiectelor din directorul Git și le plasează pe mașina locală a utilizatorului.

zona de punere în scenă este un fișier (numit și „index”, „etapă” sau „cache”) care stochează informații despre ceea ce va intra în următorul dvs. commit. Un commit este atunci când îi spui Git să salveze aceste modificări etapizate. Git face un instantaneu al fișierelor așa cum sunt și stochează permanent acel instantaneu în directorul Git.

Cu trei secțiuni, există trei stări principale în care un fișier poate fi în orice moment: comis, modificat sau organizat. Tu modifica un fișier de fiecare dată când faceți modificări în directorul dvs. de lucru. În continuare, este pus în scenă când îl mutați în zona de înscenare. În cele din urmă, este angajat după o comitere.

Instalați Git

Configurați mediul Git

Git are un git config instrument care vă permite să vă personalizați mediul Git. Puteți schimba modul în care arată și funcționează Git setând anumite variabile de configurare. Rulați aceste comenzi de pe o interfață de linie de comandă de pe computerul dvs. (Terminal în Mac, Prompt de comandă sau Powershell în Windows).

Există trei niveluri în care sunt stocate aceste variabile de configurare:

  1. Sistem: situat în /etc/gitconfig, aplică setările implicite fiecărui utilizator al computerului. Pentru a face modificări la acest fișier, utilizați fișierul --system opțiune cu git config comanda.
  2. Utilizator: situat în ~/.gitconfig sau ~/.config/git/config, aplică setările unui singur utilizator. Pentru a face modificări la acest fișier, utilizați fișierul --global opțiune cu git config comanda.
  3. Proiect: situat în YOUR-PROJECT-PATH/.git/config, aplică setările numai proiectului. Pentru a face modificări la acest fișier, utilizați fișierul git config comanda.

Dacă există setări care intră în conflict unele cu altele, configurațiile la nivel de proiect le vor suprascrie pe cele de la nivel de utilizator, iar configurațiile la nivel de utilizator le vor suprascrie pe cele de la nivel de sistem.

Notă pentru utilizatorii Windows: Git caută fișierul de configurare la nivel de utilizator (.gitconfig) în dumneavoastră $HOMEdirector (C:Users$USER). Git caută și el /etc/gitconfig, deși este relativ la rădăcina MSys, care este oriunde decideți să instalați Git pe sistemul Windows când rulați programul de instalare. Dacă utilizați versiunea 2.x sau mai recentă a Git pentru Windows, există și un fișier de configurare la nivel de sistem la C:Documents and SettingsAll UsersApplication DataGitconfig pe Windows XP și în C:ProgramDataGitconfig pe Windows Vista și mai recent. Acest fișier de configurare poate fi modificat numai de git config -f FILE ca administrator.

Adăugați numele și adresa de e-mail

Git include numele de utilizator și adresa de e-mail ca parte a informațiilor dintr-un commit. Veți dori să configurați acest lucru în fișierul de configurare la nivel de utilizator cu aceste comenzi:

git config --global user.name "My Name"
git config --global user.email "myemail@example.com"

Schimbați editorul de text

Git folosește automat editorul de text implicit, dar puteți schimba acest lucru. Iată un exemplu pentru a utiliza editorul Atom în schimb ( --wait opțiunea spune shell-ului să aștepte editorul de text, astfel încât să puteți face treaba în el înainte ca programul să continue):

git config --global core.editor "atom --wait"

Adăugați culoare la ieșirea Git

Puteți configura shell-ul pentru a adăuga culoare la ieșirea Git cu această comandă:

git config --global color.ui true

Pentru a vedea toate setările de configurare, utilizați comanda git config --list.

Inițializați Git într-un proiect

Odată ce Git este instalat și configurat pe computerul dvs., trebuie să îl inițializați în proiectul dvs. pentru a începe să utilizați puterile sale de control al versiunii. În linia de comandă, utilizați cd comanda pentru a naviga la folderul de nivel superior (sau rădăcină) pentru proiectul dvs. Apoi, executați comanda git init. Aceasta instalează un folder director Git cu toate fișierele și obiectele de care Git are nevoie pentru a vă urmări proiectul.

Este important ca directorul Git să fie instalat în folderul rădăcină al proiectului. Git poate urmări fișierele din subfoldere, dar nu va urmări fișierele situate într-un folder părinte în raport cu directorul Git.

Obțineți ajutor în Git

Dacă uitați cum funcționează orice comandă în Git, puteți accesa ajutorul Git din linia de comandă în mai multe moduri:

git help COMMAND
git COMMAND --help
man git-COMMAND

Aceasta afișează pagina manuală pentru comandă în fereastra shell. Pentru a naviga, derulați cu tastele săgeată sus și jos sau utilizați următoarele comenzi rapide de la tastatură:

  • f sau spacebar să înainteze pagina
  • b la pagină înapoi
  • q a renunța

Diferența dintre Git și GitHub

Git și Github sunt două lucruri diferite. Git este sistem de control al versiunii, in timp ce GitHub este un serviciu de găzduire Git repos care ajută oamenii să colaboreze la scrierea software-ului. Cu toate acestea, acestea sunt adesea confuze datorită numelui lor similar, datorită faptului că GitHub se bazează pe Git și pentru că multe site-uri și articole nu fac diferența suficient de clară.

Git nu este GitHub

Git

Git este sistemul de control al versiunii distribuite. Git este responsabil pentru urmărirea modificărilor aduse conținutului – de obicei fișiere cu cod sursă.

Pentru mai multe informații, există un articol complet despre Git în sine.

GitHub

GitHub este un serviciu care oferă găzduirea depozitului Git. Asta înseamnă că oferă o soluție la cheie pentru a găzdui depozite Git pe serverele lor. Acest lucru poate fi util pentru a păstra o copie de rezervă a depozitului dvs. (Git urmărește doar modificările aduse fișierelor dvs. în timp; repo trebuie totuși să fie copiat) și pentru a avea un loc centralizat pentru păstrarea și partajarea codului dvs. cu alții.

Mai mult decât un serviciu de găzduire a depozitului Git, GitHub este un forjare software. Asta înseamnă că oferă și un detector de probleme, instrumente pentru revizuire a Coduluiși alte instrumente pentru colaborarea cu alte persoane și crearea de software.

GitHub nu este singurul care oferă acest tip de servicii. Unul dintre principalii săi concurenți este GitLab. Pentru mai multe detalii, consultați secțiunea despre găzduirea Git.

Cum să vă autentificați cu GitHub folosind SSH

Verificați dacă nu există rsa fișiere aici înainte de a continua, utilizați:

ls -al ~/.ssh

Dacă nu este nimic de enumerat (adică : No such file or directory) apoi utilizați:

mkdir $HOME/.ssh

Dacă nu există nimic, atunci generați un nou keygen cu:

ssh-keygen -t rsa -b 4096 -C your@email.com

Acum folosind ls -al ~/.ssh ne va arăta id_rsa.pub fişier.

Adăugați cheia SSH la agentul SSH:

eval "$(ssh-agent -s)" # for mac and Linux from bash
eval `ssh-agent -s`
ssh-agent -s # for Windows

Adăugați cheia RSA la SHH cu:

ssh-add ~/.ssh/id_rsa

Copiați cheia în clipboard

clip < ~/.ssh/id_rsa.pub # Windows
cat ~/.ssh/id_rsa.pub # Linux

Accesați GitHub setări pagină și faceți clic pe butonul „Nouă cheie SSH” lipiți în cheia generată.

Apoi autentificați cu:

ssh -T git@github.com