Estoy pasando por Bitbucket y parece que no puedo encontrar ningún repositorio Mercurial que se parezca a lo que sospecho que se vería en nuestro repositorio, siempre que cambiemos a Mercurial.repositorios mercuriales con muchos desarrolladores activos?
Como tal, me pregunto, ¿hay un flujo de trabajo que no estamos considerando aquí?
Lo que estoy diciendo es que hice una pequeña prueba automatizada. Somos 14 personas que trabajamos en el mismo proyecto, divididos en 4 equipos scrum. Para simular 14 (elegí 10, número redondo) personas que trabajan en paralelo en el código, usando Mercurial DVCS, presionando al mismo repositorio principal central, escribí un guión.
- he creado un nuevo repositorio "maestro", y luego clonado para 10 personas virtuales
- Entonces me encontré con un bucle 1000 iteración, la selección de un clon de azar, y una de las acciones siguientes:
- 10% del tiempo, hacer un tirón de maestro, fusionar, cometer de mezcla, y empuje
- 90% del tiempo, hacer un cambio local y cometer
Tenga en cuenta que me aseguré de que nunca hubiera conflictos de fusión simplemente haciendo que cada persona virtual trabaje en su propio archivo.
Esto simularía a las personas que trabajan localmente haciendo 1+ confirmaciones antes de tirar, fusionar y empujar (para evitar 2 encabezados en el repositorio maestro). Es posible que este flujo de trabajo sea incorrecto.
Esta es una muestra de lo que el repositorio ahora se ve como (+ pantalla enlace a la cesión temporal):
El repositorio se puede encontrar aquí: http://hg.vkarlsen.no/hgweb.cgi/parallel_test/graph.
Esto se ve muy complicado, y como he dicho, parece que no puedo encontrar repositorios que tengan un historial similar. Por "desordenado", quiero decir que parece que la historia anterior del proyecto casi siempre tendrá 10 sucursales paralelas. Cerca de la parte superior, se reduce, por supuesto, pero se expandirá a medida que las personas que trabajan actualmente en su repositorio local presionen al maestro.
así que tengo dos preguntas:
- ¿Alguien puede mostrar un repositorio que tiene una historia similar? Como parece que no puedo encontrar ninguno, me estoy empezando a preguntar sobre qué tipo de conclusiones puedo sacar de eso ...
- ¿Hay algún problema con nuestro flujo de trabajo (es decir, el flujo de trabajo que he expuesto? aquí)? ¿Deberíamos volver a basar/aplastar/trasplantar, delegar responsabilidad de empuje a una persona, a otras cosas, en lugar de hacerlo de la manera en que se hizo aquí?
Bien, entonces esto no está fuera de la base. Me preguntaba si los demás estarían enviando correos electrónicos de parche a un mantenedor central o lo que sea, pero ese repositorio al que me estás conectando me muestra lo mismo. Bueno. La siguiente parada es evaluar el horno (de Fogcreek) como nuestro sitio web, con su DAG eléctrico debería ser fácil ver qué confirmaciones contribuyen a qué otras confirmaciones, lo que podría hacer que el historial anterior sea mucho más fácil de usar. –
No sabía nada sobre el DAG ecléctico. Veremos el horno más. Consulte también http://stackoverflow.com/questions/3879856/is-herehereany-way-to-change-how-graphs-are-represented- in-mercurial para mejorar la visualización de gráficos. – Macke
Para aplastar la compilación, puede usar la extensión pbranch, que está diseñada para hacer mucho más: le permite mantener, dividir, fusionar y publicar múltiples ramas de WIP, un poco como TopGit para git. Sin embargo, es bastante pesado, por lo que probablemente necesite algunos scripts adicionales en la parte superior. –