¿Qué sucede si fusiono una confirmación que ha eliminado el código de la que depende mi nueva function?

Digamos que Alice y yo hemos clonado un repository y hemos estado haciendo cambios. Alice confirma sus cambios y los empuja a remoto. Luego busco ese cambio y lo combino con el mío. Imagina que Alice, en su último compromiso, ha eliminado una class llamada Vehículo. Yo, a mi vez, he agregado una nueva class llamada Car que amplía la class de Vehículo. Ahora, cuando fusiono su compromiso con el mío, obviamente habrá un problema. ¿Esto significa que tengo que examinar el código y probarlo antes de fusionarme? (Probablemente si). ¿Cuál es la práctica común en esta situación?

¿Esto significa que tengo que examinar el código y probarlo antes de fusionarme? (Probablemente si).

Debe examinar el código después de la fusión . Podría examinar la twig del otro desarrollador antes de fusionarse, pero sería less conveniente.

¿Cuál es la práctica común en esta situación?

Después de una fusión, debe rebuild el proyecto y volver a ejecutar todas las testings. Si una class de la que depende se elimina durante la fusión, obtendrá un error de compilation en un lenguaje comstackdo. En los idiomas interpretados, con suerte, tiene casos de testing que cubren el código afectado, por lo que el problema se pondrá de manifiesto al volver a ejecutar las testings automatizadas. Cuando detecta un problema, puede inspeccionar lo que se fusionó y posiblemente debata con los demás desarrolladores las preguntas que pueda tener sobre el motivo de los cambios.

Afortunadamente, en un equipo con buena comunicación y buena separación de tareas, no debería haber tales conflictos lógicos en los cambios de implementación.