Introducció
Git és un sistema de control de versions distribuït, dissenyat per gestionar tot, des de projectes petits fins a projectes molt grans amb velocitat i eficiència. Va ser creat per Linus Torvalds el 2005 per ajudar en el desenvolupament del nucli de Linux. Des de llavors, Git s'ha convertit en una eina essencial per a desenvolupadors de programari de tot el món.
Característiques Clau de Git
- Distribuït: Cada desenvolupador té una còpia completa del repositori, incloent-hi tot l'historial de canvis.
- Velocitat: Les operacions locals són molt ràpides perquè no necessiten accedir a la xarxa.
- Integritat: Cada canvi es registra amb una suma de verificació (hash SHA-1), garantint la integritat de les dades.
- Ramificació i Fusió: Git facilita la creació i fusió de branques, permetent fluxos de treball flexibles i col·laboratius.
Per què Utilitzar Git?
Avantatges
- Col·laboració: Facilita el treball en equip, permetent que múltiples desenvolupadors treballin en paral·lel.
- Historial: Manté un registre complet de tots els canvis realitzats en el projecte.
- Recuperació: Permet desfer canvis i recuperar versions anteriors del projecte.
- Integració: Es pot integrar amb moltes altres eines i serveis, com GitHub, GitLab, Bitbucket, etc.
Comparació amb Altres Sistemes de Control de Versions
Característica | Git | Subversion (SVN) | Mercurial |
---|---|---|---|
Distribuït | Sí | No | Sí |
Velocitat | Alta | Mitjana | Alta |
Fusió | Fàcil | Complicada | Fàcil |
Popularitat | Alta | Mitjana | Mitjana |
Com Funciona Git?
Instantànies, No Diferències
A diferència d'altres sistemes de control de versions que emmagatzemen les diferències entre versions, Git emmagatzema una instantània completa de cada versió del projecte. Si un fitxer no ha canviat, Git només enllaça a la versió anterior del fitxer.
Flux de Treball Bàsic
- Clonar: Crear una còpia del repositori.
- Modificar: Fer canvis en els fitxers.
- Preparar (Staging): Afegir els canvis a l'àrea de preparació.
- Cometre (Commit): Guardar els canvis al repositori local.
- Empènyer (Push): Enviar els canvis al repositori remot.
Exemples Pràctics
Clonar un Repositori
Preparar i Cometre Canvis
Empènyer Canvis
Exercicis Pràctics
Exercici 1: Instal·lar Git
- Windows: Descarrega i instal·la Git des de git-scm.com.
- macOS: Utilitza Homebrew:
brew install git
- Linux: Utilitza el gestor de paquets de la teva distribució:
sudo apt-get install git
Exercici 2: Configurar Git
Configura el teu nom d'usuari i correu electrònic:
git config --global user.name "El teu Nom" git config --global user.email "[email protected]"
Exercici 3: Crear un Repositori
- Crea una carpeta nova:
mkdir meu_projecte cd meu_projecte
- Inicialitza un repositori Git:
git init
Resum
En aquesta secció, hem après què és Git, les seves característiques clau, avantatges i com funciona. També hem vist exemples pràctics de com clonar un repositori, preparar i cometre canvis, i empènyer aquests canvis a un repositori remot. Finalment, hem realitzat alguns exercicis pràctics per instal·lar i configurar Git, així com per crear un repositori nou.
En el següent tema, explorarem com instal·lar Git en diferents sistemes operatius.
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ó