Skip to content

Instantly share code, notes, and snippets.

@enrique26
Last active February 18, 2021 20:45
Show Gist options
  • Save enrique26/dbc6e8dd1c3aea73987f6c2850b46e4a to your computer and use it in GitHub Desktop.
Save enrique26/dbc6e8dd1c3aea73987f6c2850b46e4a to your computer and use it in GitHub Desktop.
Trabajar con orphan branch github (branch huerfanos o independientes)
/*
* Los orphan branches (o ramas huerfanas), permiten generar una rama del proyecto sin relacion directa con la ramas padres
* iniciando desde 0 inclusive el historial de commits, en caso de que este no quiera ser compartido
* este proceso puede usarse cuando 2 proyectos inician de forma independiente , o se busca comaprtir ciertas secciones de uno
* sin comartir el historial peor se busca unir despues a la rama principal
*/
//PASOS
//1. crear un orpahn branch
git checkout --orphan <branch_orphan_name>
/*
* creara un nuevo branch de forma similar a usar checkout -b , solo que no estara relacionado al historail de la rama padre
* por lo que no listara los commits previos a su creacion
*/
//2. remover todos los archivos del nuevo branch *
git rm -rf .
/*
* eliminar todos los archivos previos de git para inciar un nuevo historial en el nuevo branch
* con archivos especificos de la rama padre cargados manualmente, para que no afecten si posterioremente se hace una
* union con la rama padre
*/
// 3.agregar archivos o modificar uno existente si es que no se borro ninguno, y generar el primer commit del nuevo branch
git add .
git commit -m 'branch independiente sin relacion directa al historial de la rama padre'
git push origin <branch_orphan_name>
/// 4. unir branch con historiales no relacionados
git merge master <branch_orphan_name> --allow-unrelated-histories
/*
* por defecto git , no permite la unicon de ramas con un historial no relacionado aun mismo ancestro (rama padre),
* para evitar incongruencias y problemas mayores
* el comando --allow-unrelated-histories , permite la union de ramas que no tienen una relacion directa
*
*/
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment