Potenciales conflictos sobre builds, git pushes y otros cuando se sobreponen en un proyecto...

ultracobra

Ni
Verificación en dos pasos desactivada
Verificado por Whatsapp
Desde
12 Abr 2017
Mensajes
3.874
Tengo una duda sobre GitHub al hacer los pushes, qué pasa si hago pushes y luego tengo proyectos internos en ese 'padre' que para desplegarse necesitan un build, si no se hace ese build pero por encima se hace un . add, commit y luego un push, qué comportamiento se espera de los módulos y componentes?

la pregunta es menos sencilla de lo que parece y espero alguien con experiencia me ayude a ver las particularidades de este problema...
 

BotBeta

Admin
Sigma
Verificado
Verificación en dos pasos activada
Verificado por Whatsapp
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Suscripción a IA
Desde
13 Jun 2020
Mensajes
29.903
En general, al hacer un push en GitHub se intentará subir todos los cambios realizados en los archivos locales al repositorio remoto. Si se han hecho cambios en un módulo o componente que necesita un build para desplegarse correctamente, es posible que esos cambios no tengan el efecto deseado si no se ha construido el proyecto.

Por lo tanto, para asegurarse de que los cambios se reflejen correctamente, es recomendable seguir los siguientes pasos:

1. Realizar el build del proyecto localmente.
2. Probar los cambios en el proyecto construido y verificar que están funcionando correctamente.
3. Hacer un `add`, `commit` y `push` en ese orden para subir los cambios al repositorio remoto.

De esta forma, se asegura que los cambios estarán disponibles en el repositorio remoto y que funcionarán correctamente cuando se implementen. Si se hace el `add`, `commit` y `push` sin haber construido el proyecto, es posible que se suban cambios que no funcionen como se espera.
 
Upvote 0

kj2

Kappa
Verificación en dos pasos activada
¡Ha verificado su Paypal!
Verificado por Binance
Desde
1 Abr 2011
Mensajes
2.580
Pues hay 2 opciones:

1. Hacer la build fijándola a un commit en lugar de a un branch.
2. Tienes un branch distinto.

Es muy normal siempre trabajar en branch distintos incluso cuando desarrollas solo. Por ej. yo hace poco saqué el Multipaste 3.0, pero durante todo el desarrollo de eso, estuve en otro branch y recién al lanzar la versión 3.0 ese branch se pasó a master.

Por otro lado, muchas veces tengo clientes que quieren modificaciones específicas para ellos en los códigos que hago, pero como luego cuando hayan actualizaciones igual querrán esos cambios otra vez junto con las actualizaciones. Lo que hago es poner su versión modificada en un branch y lo dejo ahí, luego cuando haya updates y el cliente me pida que le de las actualizaciones, pero con sus cambios, se hace un upstream update a ese branch.

kj
 
Upvote 0

ultracobra

Ni
Verificación en dos pasos desactivada
Verificado por Whatsapp
Desde
12 Abr 2017
Mensajes
3.874
Pues hay 2 opciones:

1. Hacer la build fijándola a un commit en lugar de a un branch.
2. Tienes un branch distinto.

Es muy normal siempre trabajar en branch distintos incluso cuando desarrollas solo. Por ej. yo hace poco saqué el Multipaste 3.0, pero durante todo el desarrollo de eso, estuve en otro branch y recién al lanzar la versión 3.0 ese branch se pasó a master.

Por otro lado, muchas veces tengo clientes que quieren modificaciones específicas para ellos en los códigos que hago, pero como luego cuando hayan actualizaciones igual querrán esos cambios otra vez junto con las actualizaciones. Lo que hago es poner su versión modificada en un branch y lo dejo ahí, luego cuando haya updates y el cliente me pida que le de las actualizaciones, pero con sus cambios, se hace un upstream update a ese branch.

kj
Me diste una idea y lo que pones es muy acertado e ingenioso. Me cuesta aún dominar las branches, abrirlas y luego fusionarlas, pero es momento de tratar de mejorar el manejo de esa herramienta... Gracias!
 
Upvote 0

ultracobra

Ni
Verificación en dos pasos desactivada
Verificado por Whatsapp
Desde
12 Abr 2017
Mensajes
3.874
Pues hay 2 opciones:

1. Hacer la build fijándola a un commit en lugar de a un branch.
2. Tienes un branch distinto.

Es muy normal siempre trabajar en branch distintos incluso cuando desarrollas solo. Por ej. yo hace poco saqué el Multipaste 3.0, pero durante todo el desarrollo de eso, estuve en otro branch y recién al lanzar la versión 3.0 ese branch se pasó a master.

Por otro lado, muchas veces tengo clientes que quieren modificaciones específicas para ellos en los códigos que hago, pero como luego cuando hayan actualizaciones igual querrán esos cambios otra vez junto con las actualizaciones. Lo que hago es poner su versión modificada en un branch y lo dejo ahí, luego cuando haya updates y el cliente me pida que le de las actualizaciones, pero con sus cambios, se hace un upstream update a ese branch.

kj
Parece que sabes mucho del tema. Es un poc diferente el ejemplo porque no es fácil de explicar o no lo hice bien. Lo resolví así, en cada repositorio hijo entro, hago git add . y git commit -m, y luego hago lo mismo en el repositorio padre. Así dejó de presentar conflictos, eso hasta que aprenda a manejar Docker...
 
Upvote 0

Benderslab

Kappa
Verificado
Verificación en dos pasos activada
Verificado por Whatsapp
Verificado por Binance
Desde
16 Abr 2018
Mensajes
2.557
Creo que yo si te entendí y según mi xp solo pusheas los cambios, lo que ya estaba se queda como estaba aunque hagas add . En el padre.
 
Upvote 0

ultracobra

Ni
Verificación en dos pasos desactivada
Verificado por Whatsapp
Desde
12 Abr 2017
Mensajes
3.874
Creo que yo si te entendí y según mi xp solo pusheas los cambios, lo que ya estaba se queda como estaba aunque hagas add . En el padre.
En el caso que me funciona luego de 'adear' y 'comitear' cada uno antes que el padre, permite el push; si no comiteo los individuales antes no me permite hacer push. AL final las subinstalaciones son como módulos...
 
Upvote 0

Benderslab

Kappa
Verificado
Verificación en dos pasos activada
Verificado por Whatsapp
Verificado por Binance
Desde
16 Abr 2018
Mensajes
2.557
En el caso que me funciona luego de 'adear' y 'comitear' cada uno antes que el padre, permite el push; si no comiteo los individuales antes no me permite hacer push. AL final las subinstalaciones son como módulos...
Intenta commiteando los hijos y luego haz add . Y push en el padre
 
Upvote 0

¡Regístrate y comienza a ganar!

Beneficios

  • Gana dinero por participar
  • Gana dinero por recomendarnos
  • Descubre ofertas de empleo diariamente
  • Negocios seguros
  • ¡Información premium y más!

Acceder

¿Ya tienes una cuenta? Accede aquí

Arriba