Per què protegir la branca principal?
La branca main (o master) és habitualment la branca de producció o la més estable del projecte. Per evitar que s’hi afegeixin canvis que trenquin funcionalitats, podem protegir-la mitjançant:
- La protecció de branques que impedeix fer push directes.
- L’execució obligatòria de proves abans de fer merge.
Objectiu d’aquest post
Configurar GitHub per tal que:
- No es pugui fer push directe a
main. - Només es puguin fer pull requests amb proves superades.
Pas 1: Configura GitHub Actions si no ho has fet
Si encara no tens cap workflow a .github/workflows, segueix el primer post:
Pas 2: Protegeix la branca principal
- Ves al repositori a GitHub.
- Fes clic a Settings.
- Al menú lateral, tria Branches.
- Sota “Branch protection rules”, fes clic a Add rule.
Pas 3: Crea una regla per a la branca main
- Escriu
mainal camp Branch name pattern. - Marca:
- Require a pull request before merging
- Require status checks to pass before merging
- Require branches to be up to date before merging
A sota, apareixerà el teu workflow (per exemple, Run Laravel Tests) com a status check que cal superar.
Resultat esperat
- Cap persona (ni tu mateix) podrà fer push directament a
main. - Els canvis hauran de passar per un pull request.
- El merge només es permetrà si el workflow de proves ha passat amb èxit.
Com fer servir això al teu dia a dia
Cada nova funcionalitat es fa en una nova branca:
git checkout -b feature/afegir-notificacions
Un cop feta, es fa push i es crea un pull request cap a main. Si les proves passen, es pot fer el merge.
Tags recomanats
CI/CD, GitHub, Laravel, DevOps, Branch protection, Pull Requests, Testing automatitzat





