Obrir la presentaci贸

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:
    1. Localitza un repositori p煤blic.
    2. Fes clic a "Fork".
    3. El nou repositori apareixer脿 al teu compte.

Fork a GitHub


Pull Requests (PRs)

  • Un pull request 茅s una petici贸 per integrar els teus canvis al repositori original.
  • Flux de treball t铆pic:
    1. Crear un fork i clonar-lo.
    2. Crear una nova branca per fer els canvis.
    3. Afegir commits i pujar-los al teu fork.
    4. Obrir un pull request des de la branca del fork cap al repositori original.

---v

Pull request

---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".

Issues

---v

Issues


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贸

  1. Fork del repositori original.
  2. Crear una branca nova al teu fork.
  3. Afegir canvis i fer commits.
  4. Pujar la branca al fork (git push).
  5. Obrir una Pull Request.
  6. Revisi贸 i discussi贸 de la PR.
  7. 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.

馃搳 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 Codespaces


馃 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.

馃敆 Enlla莽os