Introducció
Git és un sistema de control de versions distribuït que permet als desenvolupadors gestionar i fer un seguiment dels canvis en el codi font durant el desenvolupament del programari. És una eina essencial per a la col·laboració en equips i per mantenir un historial clar i detallat de les modificacions del projecte.
Conceptes Clau
Abans de començar a utilitzar Git, és important comprendre alguns conceptes bàsics:
- Repositori (Repository): Un repositori és una col·lecció de fitxers i carpetes gestionats per Git. Pot ser local (al teu ordinador) o remot (en un servidor).
 - Commit: Un commit és un punt en el temps que captura l'estat del teu projecte. Cada commit té un identificador únic.
 - Branch: Una branch és una línia de desenvolupament independent. La branch principal sol anomenar-se 
mainomaster. - Merge: El procés de combinar canvis de diferents branches.
 - Clone: Crear una còpia d'un repositori remot al teu ordinador.
 - Pull: Actualitzar el teu repositori local amb els canvis del repositori remot.
 - Push: Enviar els teus canvis locals al repositori remot.
 
Instal·lació de Git
Windows
- Descarrega l'instal·lador de Git des de git-scm.com.
 - Executa l'instal·lador i segueix les instruccions.
 
macOS
- Obre el terminal.
 - Executa la comanda següent per instal·lar Git mitjançant Homebrew:
brew install git 
Linux
- Obre el terminal.
 - Executa la comanda següent per instal·lar Git:
sudo apt-get install git 
Configuració Inicial
Després d'instal·lar 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]"
Comandes Bàsiques de Git
Crear un Nou Repositori
Per crear un nou repositori, utilitza la comanda següent:
Clonar un Repositori
Per clonar un repositori remot, utilitza la comanda següent:
Afegir Fitxers al Repositori
Per afegir fitxers al teu repositori, utilitza la comanda següent:
Per afegir tots els fitxers modificats:
Fer un Commit
Per fer un commit dels teus canvis, utilitza la comanda següent:
Veure l'Historial de Commits
Per veure l'historial de commits, utilitza la comanda següent:
Crear una Nova Branch
Per crear una nova branch, utilitza la comanda següent:
Canviar de Branch
Per canviar a una altra branch, utilitza la comanda següent:
Fusionar Branches
Per fusionar una branch amb la branch actual, utilitza la comanda següent:
Enviar Canvis al Repositori Remot
Per enviar els teus canvis al repositori remot, utilitza la comanda següent:
Actualitzar el Repositori Local
Per actualitzar el teu repositori local amb els canvis del repositori remot, utilitza la comanda següent:
Exercicis Pràctics
Exercici 1: Crear i Clonar un Repositori
- Crea un nou repositori local anomenat 
projecte-exemple. - Afegeix un fitxer anomenat 
README.mdamb el contingut "Aquest és un projecte d'exemple". - Fes un commit amb el missatge "Afegit README.md".
 - Clona el repositori a una nova carpeta anomenada 
projecte-exemple-clonat. 
Solució
# Crear un nou repositori git init projecte-exemple cd projecte-exemple # Afegir un fitxer README.md echo "Aquest és un projecte d'exemple" > README.md git add README.md git commit -m "Afegit README.md" # Clonar el repositori cd .. git clone projecte-exemple projecte-exemple-clonat
Exercici 2: Treballar amb Branches
- Crea una nova branch anomenada 
feature-nova-funcio. - Canvia a la branch 
feature-nova-funcio. - Afegeix un fitxer anomenat 
nova-funcio.ps1amb el contingut "Write-Host 'Nova funció'". - Fes un commit amb el missatge "Afegida nova funció".
 - Torna a la branch 
maini fusiona els canvis defeature-nova-funcio. 
Solució
# Crear una nova branch git branch feature-nova-funcio git checkout feature-nova-funcio # Afegir un fitxer nova-funcio.ps1 echo "Write-Host 'Nova funció'" > nova-funcio.ps1 git add nova-funcio.ps1 git commit -m "Afegida nova funció" # Tornar a la branch main i fusionar git checkout main git merge feature-nova-funcio
Errors Comuns i Consells
- Error: "fatal: not a git repository": Assegura't que estàs dins d'un directori de Git.
 - Error: "merge conflict": Això passa quan hi ha conflictes entre els canvis de dues branches. Resol els conflictes manualment i fes un commit.
 - Consell: Fes commits freqüents amb missatges clars i descriptius per mantenir un historial de canvis net i comprensible.
 
Conclusió
El control de versions amb Git és una habilitat essencial per a qualsevol desenvolupador. Amb les comandes bàsiques i els conceptes clau que hem cobert, ja tens una bona base per començar a utilitzar Git en els teus projectes. Practica amb els exercicis proporcionats i explora més funcions avançades de Git per millorar la teva eficiència i col·laboració en el desenvolupament de programari.
Curs de PowerShell
Mòdul 1: Introducció a PowerShell
- Què és PowerShell?
 - Instal·lació i Configuració de PowerShell
 - Consola i ISE de PowerShell
 - Comandes i Sintaxi Bàsiques
 - Sistema d'Ajuda en PowerShell
 
Mòdul 2: Scripting Bàsic
- Variables i Tipus de Dades
 - Operadors en PowerShell
 - Sentències Condicionals
 - Bucles en PowerShell
 - Funcions i Scripts
 
Mòdul 3: Treballant amb Objectes
- Comprensió dels Objectes
 - Propietats i Mètodes dels Objectes
 - Pipelines i Manipulació d'Objectes
 - Filtratge i Selecció d'Objectes
 - Ordenació i Agrupació d'Objectes
 
Mòdul 4: Tècniques Avançades de Scripting
- Gestió d'Errors
 - Depuració de Scripts
 - Expressions Regulars
 - Treballant amb Fitxers i Directoris
 - Ús de Mòduls i Snap-ins
 
Mòdul 5: Automatització i Programació de Tasques
- Introducció a l'Automatització
 - Creació de Tasques Programades
 - Ús de PowerShell per a l'Administració del Sistema
 - Automatització de Tasques d'Active Directory
 - Automatització de Tasques de Xarxa
 
Mòdul 6: Remotització amb PowerShell
- Introducció a la Remotització
 - Configuració de la Remotització
 - Ús d'Invoke-Command
 - Gestió de Sessions
 - Consideracions de Seguretat
 
Mòdul 7: Funcions Avançades de PowerShell
- Perfils de PowerShell
 - Personalització de l'Entorn de PowerShell
 - Creació i Ús de Classes
 - Treballant amb XML i JSON
 - Ús de PowerShell amb REST APIs
 
Mòdul 8: PowerShell i DevOps
- Introducció a DevOps
 - Ús de PowerShell amb Pipelines CI/CD
 - Infraestructura com a Codi (IaC)
 - Gestió de Recursos al Núvol amb PowerShell
 - PowerShell i Docker
 
