Last active
February 18, 2021 20:45
-
-
Save enrique26/dbc6e8dd1c3aea73987f6c2850b46e4a to your computer and use it in GitHub Desktop.
Trabajar con orphan branch github (branch huerfanos o independientes)
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/* | |
* 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