GIT: ejemplo de rebase

#Creamos directorio de prueba
 mkdir pruebarebase
 pruebarebase

#inicializar repositorio
 git init .

#añadir archivo 1 + commit
 echo "1" > 1.txt
 git add 1.txt
 git commit -m "1.txt"

#añadir archivo 2 + commit
 echo "2" > 2.txt
 git add 2.txt
 git commit -m "2.txt"

# rama nueva "feature"
 git checkout -b "feature"

# creación de archivo en rama "feature" + commit
 echo "feature" > feature.txt
 git add feature.txt
 git commit -m "feature.txt"

# modificación de archivo en rama "feature" + commit
 echo "feature_modificacion1" >> feature.txt
 git add feature.txt
 git commit -m "modificacion rama"

# cambiamos a la rama principal
 git checkout master


#añadir archivo 3 + commit
 echo "3" > 3.txt
 git add 3.txt
 git commit -m "3.txt"


Árbol hasta este punto:

         - f1 <- f2
       /
 1 <- 2 <--- 3
Queremos fusionar los dos commits de la rama "feature" en una sola, de modo que se mantenga la

Volvemos a la rama feature
git checkout feature

Hacemos un rebase interactivo, partimos del head -1
git rebase -i HEAD~1


en vez de pick ponemos squash en el archivo El árbol resultantes será este:
         - f1
       /
 1 <- 2 <--- 3
En f1 estaŕan los cambios de f1 y de f2

Comentarios

Entradas populares de este blog

Compilar php 4.4 con ldap en centOs

Oracle : Tablas y objetos bloqueados