GitHub — configurar un repositorio mantenible
Crear el repositorio es solo el comienzo. Una configuración pequeña y coherente reduce preguntas repetidas, evita pushes accidentales a producción y hace explícito cómo colaborar.
Decisiones iniciales
Sección titulada «Decisiones iniciales»- Visibilidad: usa
privatepara código sensible o en desarrollo; usapublicsolo cuando el contenido, el historial y la documentación puedan compartirse. - Rama por defecto:
maindebe representar el estado que el equipo considera principal. - README: explica qué hace el proyecto, cómo instalarlo, cómo ejecutar comprobaciones y dónde pedir ayuda.
- Licencia: un repositorio público sin licencia no concede automáticamente permiso para reutilizar el código.
- Topics: agrega palabras que ayuden a descubrir el proyecto, no una lista de tecnologías que realmente no usa.
Proteger main
Sección titulada «Proteger main»En Settings → Branches o Rulesets, considera exigir:
- Pull Request antes de integrar.
- Una o más aprobaciones cuando el cambio tenga riesgo.
- Checks de CI exitosos.
- Rama actualizada antes del merge.
- Bloqueo de force-push y eliminación accidental.
No exijas diez comprobaciones lentas para cada cambio si nadie puede mantenerlas. Las reglas deben proteger una decisión real del equipo, no convertirse en una barrera que la gente intente saltarse.
Archivos que conviene versionar
Sección titulada «Archivos que conviene versionar»README.mdCONTRIBUTING.mdLICENSESECURITY.mdCODE_OF_CONDUCT.md.github/ ISSUE_TEMPLATE/ PULL_REQUEST_TEMPLATE.md CODEOWNERSCODEOWNERS puede solicitar revisión a personas responsables de ciertas carpetas. Las plantillas convierten Issues y Pull Requests en información accionable desde el primer mensaje.
Seguridad mínima
Sección titulada «Seguridad mínima»- Activa secret scanning y push protection si están disponibles.
- Usa Dependabot para recibir actualizaciones y alertas de dependencias.
- Revisa quién tiene permisos de administración y escritura.
- Guarda tokens en Secrets o variables protegidas, nunca en el repositorio.
- Revisa Actions de terceros antes de concederles permisos de escritura.
La configuración correcta depende del tamaño y sensibilidad del proyecto, pero documentar las decisiones evita que la seguridad dependa de la memoria de una sola persona.