Trabajar en equipo sin plataformas: colaboración básica con Git
Llegados a este punto, Git ya no es solo una herramienta personal. Sabes crear historia, corregir errores y trabajar con ramas sin miedo. El siguiente paso aparece de forma natural cuando el proyecto deja de ser solo tuyo:
¿Cómo comparto este trabajo con otra persona?
Colaborar no significa trabajar al mismo tiempo sobre los mismos archivos. Significa compartir historia, entender qué ha cambiado y coordinar decisiones. Git resuelve esto sin necesidad de plataformas externas.
Antes de hablar de GitHub, es importante entender que Git ya sabe trabajar en equipo por sí mismo.
Git es distribuido: cada persona tiene la historia completa
Git no funciona como un documento compartido en tiempo real. Cada persona trabaja en su propia copia del proyecto, con toda la historia completa incluida. Nadie depende de una conexión constante ni de un servidor central para trabajar.
Colaborar con Git significa acordar un punto de intercambio donde compartir los cambios. Ese punto de intercambio se llama repositorio remoto.
Qué es realmente un repositorio remoto
Un repositorio remoto no es una web ni una aplicación especial. Es simplemente otro repositorio Git, situado en algún lugar accesible para más de una persona.
Un repositorio remoto es una estantería común donde todos dejan y recogen versiones del proyecto.
Ese lugar puede ser muy simple. No necesita interfaz gráfica ni servicios externos.
El caso más simple: compartir Git en una carpeta común
Imagina dos personas en la misma red local, o en una oficina con una carpeta compartida. Una de ellas crea un repositorio especial que no se usa para editar archivos, solo para intercambiar historia.
Ese tipo de repositorio se llama repositorio bare. No contiene archivos de trabajo. Contiene solo la historia.
Crear un punto de intercambio compartido
En el ordenador o servidor que hará de punto común, se crea el repositorio así:
git init --bare proyecto.git
Este repositorio no se abre con VS Code. Nadie edita archivos aquí. Es solo el lugar donde se publica y se recoge el trabajo.
Visualmente, el modelo es este:
Empezar a colaborar desde un repositorio compartido
Cada persona crea su copia local del proyecto clonando desde ese punto común:
git clone ruta/al/proyecto.git
A partir de ese momento, cada desarrollador trabaja de forma independiente, con su propia historia local.
Cuando alguien quiere compartir su trabajo, lo envía al repositorio compartido:
git push
Cuando alguien quiere ponerse al día con lo que han hecho los demás, recoge los cambios:
git pull
No hay magia. No hay sincronización automática. Todo ocurre porque alguien decide compartir y alguien decide recoger.
Qué ocurre cuando dos personas trabajan a la vez
Es normal que dos personas trabajen en paralelo. Git está diseñado para eso.
Cada persona:
- Trabaja en su copia local.
- Guarda commits de forma independiente.
- Publica sus cambios cuando lo decide.
Si los cambios no afectan a las mismas partes del proyecto, Git los combina automáticamente. Si afectan a lo mismo, Git avisa y pide una decisión humana. Git no decide por ti. Te protege de perder trabajo.
Visualizar la colaboración sin plataformas
Pensar en colaboración como “trabajar juntos en el mismo archivo” lleva a errores. Es mejor verlo como historias que se cruzan.
Cada persona avanza en su línea. El repositorio compartido sirve para reunir esas líneas cuando toca.
Colaborar sin GitHub cambia la percepción de GitHub
Después de entender este modelo, ocurre algo importante: GitHub deja de parecer imprescindible.
GitHub no es Git. GitHub es un lugar cómodo para alojar ese repositorio compartido, con extras visuales y sociales.
Pero el concepto ya lo conoces.
Si entiendes la colaboración sin GitHub, GitHub se vuelve evidente.
Lo importante que debe quedar claro
Colaborar con Git no requiere cuentas, webs ni plataformas externas. Requiere entender tres ideas simples:
- Cada persona trabaja en local.
- Existe un punto común para intercambiar historia.
- Compartir cambios es una decisión consciente.
Con esto claro, el siguiente paso ya no es técnico, sino práctico: ver cómo una plataforma como GitHub simplifica y organiza este modelo sin cambiar su esencia.