En aquest tema, aprendrem els conceptes i termes fonamentals de Git. Aquests termes són essencials per comprendre com funciona Git i per comunicar-se eficaçment amb altres desenvolupadors.
Conceptes Clau
- Repositori (Repository)
Un repositori és una col·lecció de fitxers i històric de canvis. Pot ser local (al teu ordinador) o remot (en un servidor).
- Commit
Un commit és un instantani del teu projecte en un moment determinat. Cada commit té un identificador únic (hash) i conté informació sobre els canvis realitzats, l'autor i un missatge descriptiu.
- Branch (Branca)
Una branca és una línia de desenvolupament independent. La branca principal es diu main
o master
, però pots crear altres branques per treballar en noves funcionalitats o corregir errors sense afectar la branca principal.
- Merge (Fusió)
La fusió és el procés d'integrar canvis d'una branca a una altra. Això és útil per combinar el treball de diferents branques.
- Conflict (Conflicte)
Un conflicte ocorre quan Git no pot fusionar automàticament canvis de diferents branques. Això passa quan els mateixos fitxers han estat modificats de manera incompatible.
- Remote (Repositori Remot)
Un repositori remot és una versió del teu projecte allotjada en un servidor. Permet col·laborar amb altres desenvolupadors. Els remots més comuns són GitHub, GitLab i Bitbucket.
- Clone (Clonar)
Clonar és el procés de crear una còpia local d'un repositori remot. Això et permet treballar en el projecte al teu ordinador.
- Pull
El comandament git pull
s'utilitza per actualitzar la teva còpia local amb els canvis del repositori remot.
- Push
El comandament git push
s'utilitza per enviar els teus canvis locals al repositori remot.
- Staging Area (Àrea de Preparació)
L'àrea de preparació és una zona intermèdia on col·loques els canvis que vols incloure en el següent commit. Això et permet controlar quins canvis es commiten.
- Index
L'índex és un altre nom per a l'àrea de preparació. És on es preparen els canvis abans de commitar-los.
- Checkout
El comandament git checkout
s'utilitza per canviar de branca o restaurar fitxers del repositori.
- HEAD
HEAD és un punter que indica la branca o commit actual en què estàs treballant.
- Tag (Etiqueta)
Una etiqueta és un marcador que s'utilitza per identificar commits importants, com ara versions de llançament.
Taula de Comandaments Bàsics
Comandament | Descripció |
---|---|
git init |
Inicialitza un nou repositori Git |
git clone |
Clona un repositori remot |
git add |
Afegeix fitxers a l'àrea de preparació |
git commit |
Crea un nou commit amb els canvis preparats |
git status |
Mostra l'estat dels fitxers al repositori |
git log |
Mostra l'historial de commits |
git branch |
Llista, crea o elimina branques |
git checkout |
Canvia de branca o restaura fitxers |
git merge |
Fusiona canvis d'una branca a una altra |
git pull |
Actualitza la còpia local amb canvis remots |
git push |
Envia els canvis locals al repositori remot |
Exemple Pràctic
A continuació, veurem un exemple pràctic de com utilitzar alguns d'aquests termes i comandaments:
# Inicialitza un nou repositori git init # Afegeix un fitxer a l'àrea de preparació git add fitxer.txt # Crea un commit amb els canvis preparats git commit -m "Afegeix fitxer.txt" # Crea una nova branca git branch nova-branca # Canvia a la nova branca git checkout nova-branca # Fusiona la nova branca amb la branca principal git checkout main git merge nova-branca # Afegeix un repositori remot git remote add origin https://github.com/usuari/repo.git # Envia els canvis locals al repositori remot git push origin main
Exercicis Pràctics
-
Inicialitza un nou repositori:
- Crea una carpeta nova al teu ordinador.
- Inicialitza un repositori Git dins d'aquesta carpeta.
-
Crea i commita un fitxer:
- Crea un fitxer nou dins del repositori.
- Afegeix el fitxer a l'àrea de preparació.
- Crea un commit amb un missatge descriptiu.
-
Crea una nova branca i fes canvis:
- Crea una nova branca.
- Canvia a la nova branca.
- Fes alguns canvis en un fitxer i commita'ls.
-
Fusiona la nova branca amb la branca principal:
- Canvia a la branca principal.
- Fusiona la nova branca amb la branca principal.
Solucions
-
Inicialitza un nou repositori:
mkdir nou-repo cd nou-repo git init
-
Crea i commita un fitxer:
echo "Hola, món!" > fitxer.txt git add fitxer.txt git commit -m "Afegeix fitxer.txt"
-
Crea una nova branca i fes canvis:
git branch nova-branca git checkout nova-branca echo "Canvi en la nova branca" >> fitxer.txt git add fitxer.txt git commit -m "Afegeix canvis a la nova branca"
-
Fusiona la nova branca amb la branca principal:
git checkout main git merge nova-branca
Conclusió
En aquesta secció, hem après els termes bàsics de Git i com utilitzar-los en operacions comunes. Aquests conceptes són fonamentals per treballar amb Git de manera efectiva. En el següent tema, explorarem com configurar Git per primera vegada.
Dominar Git: De Principiant a Avançat
Mòdul 1: Introducció a Git
Mòdul 2: Operacions Bàsiques de Git
- Creant un Repositori
- Clonant un Repositori
- Flux de Treball Bàsic de Git
- Preparant i Cometent Canvis
- Veient l'Historial de Commits
Mòdul 3: Branques i Fusió
- Entenent les Branques
- Creant i Canviant de Branques
- Fusionant Branques
- Resolent Conflictes de Fusió
- Gestió de Branques
Mòdul 4: Treballant amb Repositoris Remots
- Entenent els Repositoris Remots
- Afegint un Repositori Remot
- Recuperant i Traient Canvis
- Empenyent Canvis
- Seguint Branques
Mòdul 5: Operacions Avançades de Git
Mòdul 6: Eines i Tècniques de Git
Mòdul 7: Estratègies de Col·laboració i Flux de Treball
- Forking i Pull Requests
- Revisions de Codi amb Git
- Flux de Treball Git Flow
- GitHub Flow
- Integració Contínua amb Git
Mòdul 8: Millors Pràctiques i Consells de Git
- Escrivint Bons Missatges de Commit
- Mantenint un Historial Netejat
- Ignorant Fitxers amb .gitignore
- Millors Pràctiques de Seguretat
- Consells de Rendiment
Mòdul 9: Resolució de Problemes i Depuració
- Problemes Comuns de Git
- Desfent Canvis
- Recuperant Commits Perduts
- Tractant amb Repositoris Corruptes
- Tècniques Avançades de Depuració