¿Cómo crear una nueva twig sin compromisos previos de fusión remota en Git?

Cada vez que creo una nueva twig (git checkout -b <newBranchName>) , utilizo para get muchos loggings de commit:

 Merge remote-tracking branch 'upstream/master' into develop e53c044 Merge remote-tracking branch 'upstream/develop' into develop feda328 Merge remote-tracking branch 'upstream/develop' into develop 4bbd301 Merge remote-tracking branch 'upstream/develop' into develop 4dfcfcb Merge remote-tracking branch 'upstream/develop' into develop bfaccfb Merge remote-tracking branch 'upstream/develop' into develop 754c0ab Merge remote-tracking branch 'upstream/develop' into develop b0454b0 Merge remote-tracking branch 'upstream/develop' into develop f96182f 

Imagen

¿Cómo puedo crear una twig sin tales loggings?

Tal vez el parámetro orphan de git checkout podría ayudarlo a:

 git checkout --orphan NEW_BRANCH 

Esto creará una nueva twig llamada NEW_BRANCH con cero commits en ella. Pero ahora todos los files permanecen en el área de la memory caching, puede usar "git rm –cached …" para desestabilizar:

 git rm -r --cached . 

-r aquí podría deshacer files de manera recursiva.

Las confirmaciones para las nuevas twigs creadas se basan en la twig principal creada desde.

Por ejemplo, si creas una nueva twig desde la twig de develop como se muestra a continuación:

 A---B---C developer \ new 

Cuando muestre los loggings de la new sucursal, verá que se muestran las confirmaciones A , B y C

Si desea crear una new twig sin mostrar las confirmaciones principales , puede crear una twig huérfana (ejecutar en la twig de develop ):

 git checkout --orphan new 

Entonces no habrá commits en la new twig. el historial de compromiso será el siguiente:

 A---B---C developer new 

Si desea crear la new bifurcación con solo una parte de las confirmaciones para su develop , puede usar:

 git checkout -b new <last commit you want to contain in new branch> 

Por ejemplo, si desea include solo commits A y B en una new bifurcación, puede usar el command git checkout -b new <commit id for B> , luego el historial de commit será:

 A---B---C developer \ new