Col路laboraci贸 amb GitHub
Introducci贸
- GitHub no nom茅s serveix per allotjar repositoris, sin贸 tamb茅 per col路laborar en projectes compartits.
- Les principals eines de col路laboraci贸 s贸n:
- Forks: crear una c貌pia d'un repositori per fer-hi canvis lliurement.
- Pull Requests (PRs): proposar canvis per integrar-los al repositori original.
- Issues: gestionar problemes, tasques i suggeriments.
- Aquestes funcionalitats faciliten el treball en equip, el control de qualitat i la transpar猫ncia.
Forks
- Un fork 茅s una c貌pia d'un repositori a un altre compte de GitHub.
- Permet:
- Experimentar amb canvis sense afectar el projecte original.
- Proposar millores al repositori principal mitjan莽ant pull requests.
---v
- Exemple:
- Localitza un repositori p煤blic.
- Fes clic a "Fork".
- El nou repositori apareixer脿 al teu compte.
Pull Requests (PRs)
- Un pull request 茅s una petici贸 per integrar els teus canvis al repositori original.
- Flux de treball t铆pic:
- Crear un fork i clonar-lo.
- Crear una nova branca per fer els canvis.
- Afegir commits i pujar-los al teu fork.
- Obrir un pull request des de la branca del fork cap al repositori original.
---v
---v
- Els responsables del projecte poden:
- Revisar el codi.
- Demanar modificacions.
- Acceptar o rebutjar la PR.
Issues
- Les issues serveixen per:
- Informar d'errors (bugs).
- Proposar noves funcionalitats.
- Assignar tasques als membres de l'equip.
- Cada issue pot tenir:
- T铆tol i descripci贸
- Etiquetes (bug, enhancement, documentation...)
- Assignacions a usuaris
- Comentaris i discussions
---v
- Exemple d'煤s:
- "Bug: el bot贸 de login no funciona a Safari".
---v
Bones pr脿ctiques de col路laboraci贸
- Treballar sempre en branques separades (no en
main
/master
). - Escriure commits clars i descriptius.
- Obrir PRs petites i freq眉ents en lloc de canvis molt grans.
- Revisar PRs d'altres companys amb comentaris constructius.
- Utilitzar issues per documentar totes les tasques.
Exemple de flux de col路laboraci贸
- Fork del repositori original.
- Crear una branca nova al teu fork.
- Afegir canvis i fer commits.
- Pujar la branca al fork (git push).
- Obrir una Pull Request.
- Revisi贸 i discussi贸 de la PR.
- Merge al repositori original.
Funcionalitats avan莽ades de GitHub
馃寪 GitHub Pages
- Permet publicar p脿gines web directament des d'un repositori.
- Ideal per documentaci贸, blogs, portafolis i projectes educatius.
- Exemple: un
README.md
es pot convertir en una web est脿tica.
鈿欙笍 GitHub Actions
- Sistema d'integraci贸 i desplegament continu (CI/CD).
- Pots definir workflows que s'executen autom脿ticament quan hi ha commits o PRs.
- Exemples:
- Compilar i executar tests.
- Desplegar aplicacions.
- Publicar paquets o p脿gines web.
馃摉 GitHub Wiki
- Espai per crear documentaci贸 col路laborativa amb Markdown.
- Difer猫ncia amb el
README
:- El
README
explica el projecte de manera resumida. - La Wiki pot contenir guies, manuals i informaci贸 m茅s extensa.
- El
馃搳 GitHub Insights
- Ofereix estad铆stiques del projecte:
- Activitat de commits i PRs.
- Perfils de contribuci贸.
- Gr脿fiques de codi, llenguatges, etc.
- Ajuda a avaluar la salut i la comunitat d'un projecte.
馃捇 GitHub Codespaces
- Entorn de desenvolupament al n煤vol basat en Visual Studio Code.
- Avantatges:
- No cal instal路lar res al teu ordinador.
- Pots comen莽ar a programar des del navegador.
- Ideal per a docents i estudiants.
馃 GitHub Copilot
- Assistent de programaci贸 basat en IA.
- Suggeriments de codi en temps real.
- Integrat a VS Code, JetBrains i Neovim.
- Pot augmentar la productivitat, per貌 cal revisar sempre el codi suggerit.