Nuestro equipo utiliza solicitudes de extracción de Github para administrar nuestro flujo de trabajo, al igual que what is described here. Al revisar manualmente la Solicitud de extracción aceptada, ocasionalmente necesitamos revertir esa combinación porque no está lista para su implementación en nuestros servidores de producción.Revertir una compilación de fusión de git, y luego revertir la revertir
Sin embargo, si un desarrollador intenta emitir una solicitud de extracción nuevamente, no reconoce que estos cambios se revertieron y ve que los commits ya están en la rama principal. Solo incluirá sus confirmaciones recientes desde la reversión, pero lo que realmente queremos es reintroducir TODAS las confirmaciones que se han revertido, además de su nuevo trabajo. En otras palabras, nos gusta una forma de volver a emitir la Solicitud de extracción original.
Dado que Github no es compatible con esta característica (es decir, no se revierte una fusión, ni se deshace/vuelve a emitir una solicitud de extracción original), actualmente estoy revertiendo la fusión revertida. Esto se siente mal.
¿Qué otras formas podría usar para lograr el mismo objetivo en git? (o Github si es posible)
Si ha intentado fusionar localmente las confirmaciones de la solicitud de extracción, y decidió después de la prueba que aún no desea realizar esa combinación, ¿por qué revierte la fusión, en lugar de simplemente restablecer el maestro antes de la fusión? ? (Supongo que no publica su rama principal después de fusionar una solicitud de extracción pero antes de decidir si la conserva o no). –
Una vez que se acepta la solicitud de extracción, se fusiona automáticamente en principal, para que cualquiera en nuestro equipo pueda extraerla en cualquier momento. Al revertir, estaba siguiendo el consejo de la publicación de blog a la que hice referencia en mi pregunta, porque nos permitía pasar simplemente a otras solicitudes de extracción y minimizar los cuellos de botella en nuestro flujo de trabajo. Me preocupa que reiniciar empeoraría las cosas debido al hecho de que el maestro siempre está disponible para nuestros colaboradores de repositorio. –
Ah, entonces aceptas la solicitud de extracción realmente en GitHub. (La función para pedirle a GitHub que realmente haga la fusión se agregó bastante recientemente.) En lugar de eso, buscaría las confirmaciones sugeridas en su repositorio local, las fusionaría y las probaría allí. Si está contento con eso, puede marcar la solicitud de extracción como aceptada en GitHub. –