Introducció
GitHub Flow és una metodologia de treball amb Git desenvolupada per GitHub que facilita la col·laboració i la integració contínua en projectes de programari. És una alternativa lleugera i flexible a altres fluxos de treball com Git Flow, i és especialment útil per a equips que treballen en projectes amb desplegaments freqüents.
Conceptes Clau
- Branques de Treball: Cada nova característica o correcció de bug es desenvolupa en una branca separada.
- Pull Requests: Les branques es fusionen a la branca principal (generalment
main
omaster
) mitjançant pull requests. - Revisions de Codi: Les pull requests són revisades per altres membres de l'equip abans de ser fusionades.
- Desplegament Contínuu: Els canvis es despleguen a producció tan aviat com són fusionats a la branca principal.
Passos del Flux de Treball GitHub Flow
- Crear una Branca
Cada vegada que comences a treballar en una nova característica o correcció, crea una nova branca des de la branca principal.
- Treballar en la Branca
Fes els canvis necessaris en la teva branca. Afegeix i commet els canvis regularment.
- Pujar la Branca al Repositori Remot
Puja la teva branca al repositori remot per compartir el teu treball amb altres membres de l'equip.
- Obrir una Pull Request
Des de GitHub, obre una pull request per a la teva branca. Això permetrà que altres membres de l'equip revisin el teu codi.
- Revisió de Codi
Els teus companys revisaran la pull request, deixaran comentaris i suggeriran canvis si és necessari. Pots fer canvis addicionals a la teva branca i pujar-los.
git add . git commit -m "Adreça els comentaris de revisió" git push origin feature/nova-caracteristica
- Fusionar la Pull Request
Un cop la pull request ha estat aprovada, es pot fusionar a la branca principal. Això es pot fer des de la interfície de GitHub.
- Desplegament
Els canvis fusionats a la branca principal es despleguen a producció. Això pot ser automàtic si tens configurada la integració contínua.
Exemple Pràctic
Crear una Branca
Fer Canvis i Commetre
# Edita el fitxer index.html per afegir un nou botó git add index.html git commit -m "Afegeix un nou botó a la pàgina principal"
Pujar la Branca
Obrir una Pull Request
- Ves a GitHub i selecciona el teu repositori.
- Fes clic a "Compare & pull request".
- Revisa els canvis i crea la pull request.
Revisió i Fusió
- Els teus companys revisaran la pull request.
- Un cop aprovada, fes clic a "Merge pull request" a GitHub.
Desplegament
Els canvis es desplegaran automàticament si tens configurada la integració contínua.
Exercici Pràctic
Objectiu
Implementar una nova característica en un projecte existent seguint el flux de treball GitHub Flow.
Passos
- Crear una Branca: Crea una nova branca anomenada
feature/afegir-footer
. - Fer Canvis: Afegeix un footer a la pàgina principal del projecte.
- Commetre Canvis: Commet els canvis amb un missatge descriptiu.
- Pujar la Branca: Pujar la branca al repositori remot.
- Obrir una Pull Request: Obre una pull request a GitHub.
- Revisió de Codi: Demana a un company que revisi la teva pull request.
- Fusionar la Pull Request: Fusiona la pull request un cop aprovada.
Solució
# Crear una branca git checkout -b feature/afegir-footer # Fer canvis (edita el fitxer index.html per afegir un footer) echo "<footer>© 2023 La Meva Empresa</footer>" >> index.html # Commetre canvis git add index.html git commit -m "Afegeix un footer a la pàgina principal" # Pujar la branca git push origin feature/afegir-footer # Obrir una pull request a GitHub i seguir els passos restants
Conclusió
GitHub Flow és un flux de treball senzill i efectiu per a equips que volen desplegar canvis freqüentment i mantenir un procés de revisió de codi rigorós. Seguint aquests passos, pots assegurar-te que el teu codi és revisat i provat abans de ser desplegat a producció, millorant la qualitat del programari i facilitant la col·laboració en equip.
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ó