Pregunta Crear una rama en Git desde otra rama


Tengo dos ramas: dominar y dev

Quiero crear una "rama de característica" de la dev rama.

Actualmente en el desarrollo de la rama, hago:

$ git checkout -b myfeature dev

... (algo de trabajo)

$ git commit -am "blablabla"
$ git push origin myfeature

Pero, después de visualizar mis ramas, obtuve:

--**master**
------0-----0-----0-----0-----0
------------------------**dev**----**myfeature**

Quiero decir que la rama parece fusionarse, y no entiendo por qué ...

¿Qué estoy haciendo mal?

¿Puede explicarme cómo se bifurca de otra sucursal y vuelve al repositorio remoto para la rama de características?

Todo eso en un modelo de ramificación como el descrito aquí.


574
2017-12-17 12:39


origen


Respuestas:


Si te gusta el método en el enlace que has publicado, echa un vistazo a Git Flow.

Es un conjunto de scripts que creó para ese flujo de trabajo.

Pero para responder a tu pregunta:

$ git checkout -b myFeature dev

Crea MyFeature branch off dev. Haz tu trabajo y luego

$ git commit -am "Your message"

Ahora fusiona tus cambios a dev sin un avance rápido

$ git checkout dev
$ git merge --no-ff myFeature

editar

Ahora presione cambios al servidor

$ git push origin dev
$ git push origin myFeature

Y lo verás como lo quieres.


824
2017-12-17 13:23



Si desea crear una nueva sucursal desde cualquiera de las sucursales existentes en Git, simplemente siga las opciones.

Primero cambie / ingrese a la sucursal desde donde desea crear una nueva sucursal. Por ejemplo, si tiene las siguientes ramas como:

  • dominar
  • dev
  • branch1

Entonces, si quieres crear una nueva rama llamada "subbranch_of_b1" bajo la rama llamada "branch1" sigue los pasos:

  1. Pago o cambio en "branch1"

    git checkout branch1
    
  2. Ahora crea tu nueva rama llamada "subbranch_of_b1" bajo la "branch1" usando el siguiente comando.

    git checkout -b subbranch_of_b1 branch1
    

    Lo anterior creará una nueva rama llamada subbranch_of_b1 debajo de la rama branch1 (tenga en cuenta que branch1 en el comando anterior no es obligatorio, ya que HEAD está apuntando a él, puedes precisarlo si estás en una rama diferente).

  3. Ahora después de trabajar con el subbranch_of_b1 puede comprometerlo y presionarlo o fusionarlo de forma local o remota.

A sample Graphical Illustration Of Creating Branches Under another Branch


210
2017-09-04 07:00



Crear una rama

  • Crear una bifurcación cuando la rama principal está desprotegida. Aquí los commits en master se sincronizarán con la rama que creaste.

    $ git branch branch1

  • Crear una bifurcación cuando Branch1 está desprotegido. Aquí los commits en branch1 se sincronizarán con branch2

    $ git branch branch2


Pagar una sucursal

git checkout command switch branches o restaurar archivos de árbol de trabajo

  • $ git checkout branchname

Cambiar el nombre de una rama

  • $ git branch -m branch1 newbranchname

Eliminar una rama

  • $ git branch -d branch-to-delete
  • $ git branch -D branch-to-delete ( forzar la eliminación sin verificar el estado fusionado )

Crear y cambiar de rama

  • $ git checkout -b branchname

Ramas que están completamente incluidas

  • $ git branch --merged


************************** Diferencias de rama [git diff branch1..branch2] ************************

Diferencia de multilínea
  • $ git diff master..branch1
Diferencia de línea única
  • $ git diff --color-words branch1..branch2

16
2017-12-08 18:13



Hacer trabajo simultáneo en el dev rama. Lo que sucede es que en su escenario la rama de características se mueve hacia adelante desde la punta de la rama de desarrollo, pero la rama de desarrollo no cambia. Es más fácil dibujar como una línea recta, porque puede considerarse como un movimiento hacia adelante. Llegaste al punto A en el desarrollo, y desde allí simplemente continuaste en un camino paralelo. Las dos ramas en realidad no divergieron.

Ahora, si realiza un commit en dev, antes de fusionarse, comenzará de nuevo en el mismo commit, A, pero ahora las funciones irán a C y dev a B. Esto mostrará la división que está tratando de visualizar, ya que las ramas ahora han divergido.

*-----*Dev-------*Feature

Versus

       /----*DevB
*-----*DevA
       \----*FeatureC

10
2017-12-05 14:46



git checkout branchName

Cambiado a otra rama "branchName"


-4
2018-05-16 13:48