Utilizo git para proyectos personales y creo que es genial. Es rápido, flexible, potente y funciona muy bien para el desarrollo remoto.
Pero ahora es obligatorio en el trabajo y, francamente, estamos teniendo problemas.
Fuera de la caja, git no parece funcionar bien para el desarrollo centralizado en una organización grande (más de 20 desarrolladores) con desarrolladores de diferentes habilidades y niveles de sofisticación de git, especialmente en comparación con otros sistemas de control de fuente como Perforce o Subversion, que están dirigidos a ese tipo de entorno. (Sí, lo sé, Linus nunca tuvo la intención de eso).
Pero, por razones políticas, estamos atrapados con git, incluso si apesta por lo que estamos tratando de hacer con él.
Estas son algunas de las cosas que estamos viendo:
- Las herramientas de la GUI no están maduras
- Usando las herramientas de línea de comando, es demasiado fácil arruinar una fusión y borrar los cambios de otra persona.
- No ofrece permisos de repositorio por usuario más allá de los privilegios globales de solo lectura o lectura-escritura.
- Si tiene permiso para CUALQUIER parte de un repositorio, puede hacer lo mismo con CADA parte del repositorio, por lo que no puede hacer algo como crear una rama de seguimiento de grupos pequeños en el servidor central que otras personas no puedan meterse con.
- Los flujos de trabajo que no sean "todo vale" o "dictador benevolente" son difíciles de fomentar, y mucho menos de hacer cumplir
- No está claro si es mejor usar un solo gran repositorio (que permite a todos meterse con todo) o muchos repositorios por componente (lo que genera dolores de cabeza al intentar sincronizar versiones).
- Con múltiples repositorios, tampoco está claro cómo replicar todas las fuentes que alguien más tiene extrayendo del repositorio central, o hacer algo como obtener todo a las 4:30 de la tarde de ayer.
Sin embargo, escuché que la gente está usando git con éxito en grandes organizaciones de desarrollo.
Si se encuentra en esa situación, o si en general tiene herramientas, consejos y trucos para hacer más fácil y productivo el uso de git en una organización grande donde algunas personas no son fanáticas de la línea de comandos, me encantaría escuchar lo que tiene. sugerir.
Por cierto, ya hice una versión de esta pregunta en LinkedIn, y no obtuve respuestas reales, pero sí un montón de "Dios, ¡me encantaría saber eso también!"
ACTUALIZACIÓN: Déjame aclarar ...
Donde trabajo, no podemos usar NADA más que git . No es una opción. Estamos atrapados con eso. No podemos usar mercurial, svn, bitkeeper, Visual Source Safe, ClearCase, PVCS, SCCS, RCS, bazaar, Darcs, monotone, Perforce, Fossil, AccuRev, CVS o incluso el buen proyector de Apple que usé en 1987. Entonces, aunque puede discutir otras opciones, no obtendrá la recompensa si no habla de git.
Además, estoy buscando consejos prácticos sobre cómo usar git en la empresa . Puse una larga lista de problemas que estamos teniendo al principio de esta pregunta. Una vez más, la gente puede discutir la teoría, pero si quiere ganar la recompensa, deme soluciones.
a process
... (odio esa palabra)