Tengo una rama de git (llamada v4), que se hizo desde el maestro ayer. Hubo un par de cambios para dominar, que quiero incluir en la v4. Entonces, en la v4, intenté hacer un rebase desde el maestro, y un archivo sigue arruinando las cosas: un archivo de texto de una línea, que contiene el número de versión. Este archivo es app/views/common/version.txt
, que antes de rebasar contiene este texto:
v1.4-alpha-02
Esto es lo que estoy haciendo:
> git rebase master
First, rewinding head to replay your work on top of it...
Applying: new version, new branch
error: patch failed: app/views/common/version.txt:1
error: app/views/common/version.txt: patch does not apply
Using index info to reconstruct a base tree...
Falling back to patching base and 3-way merge...
Auto-merging app/views/common/version.txt
CONFLICT (content): Merge conflict in app/views/common/version.txt
Failed to merge in the changes.
Patch failed at 0001 new version, new branch
When you have resolved this problem run "git rebase --continue".
If you would prefer to skip this patch, instead run "git rebase --skip".
To restore the original branch and stop rebasing run "git rebase --abort".
El version.txt
ahora se ve así:
<<<<<<< HEAD:app/views/common/version.txt
v1.4-alpha-02
=======
v1.4-alpha-01
>>>>>>> new version, new branch:app/views/common/version.txt
Entonces, lo ordeno y se ve así ahora:
v1.4-alpha-02
y luego traté de continuar: al principio intento un compromiso:
> git commit -a -m "merged"
# Not currently on any branch.
nothing to commit (working directory clean)
No hubo suerte ahí. Entonces, estaba tratando de agregar el archivo:
git add app/views/common/version.txt
Ninguna respuesta. No tener noticias es una buena noticia, supongo. Entonces, trato de continuar:
> git rebase --continue
Applying: new version, new branch
No changes - did you forget to use 'git add'?
When you have resolved this problem run "git rebase --continue".
If you would prefer to skip this patch, instead run "git rebase --skip".
To restore the original branch and stop rebasing run "git rebase --abort".
Es en este punto, después de dar vueltas y vueltas con esto, que me golpeo la cabeza contra el escritorio.
¿Que está pasando aqui? ¿Qué estoy haciendo mal? ¿Alguien puede aclararme?
EDITAR - para unutbu
Cambié el archivo como sugirió y obtengo el mismo error:
> git rebase master
First, rewinding head to replay your work on top of it...
Applying: new version, new branch
error: patch failed: app/views/common/version.txt:1
error: app/views/common/version.txt: patch does not apply
Using index info to reconstruct a base tree...
Falling back to patching base and 3-way merge...
Auto-merging app/views/common/version.txt
CONFLICT (content): Merge conflict in app/views/common/version.txt
Failed to merge in the changes.
Patch failed at 0001 new version, new branch
When you have resolved this problem run "git rebase --continue".
If you would prefer to skip this patch, instead run "git rebase --skip".
To restore the original branch and stop rebasing run "git rebase --abort".
git rebase master
y dejas que falle ; 2) luego edita version.txt
y lo hace como debería verse en ese punto, y guarda la edición; 3) entonces tú git add .../version.txt
; 4) ¡Entonces lo haces git rebase --continue
( no 'comprometes' )! Si rebase --continue
tiene éxito aquí, ya está comprometido (¡no es necesario git commit
aquí!), Por lo que todo lo que queda por hacer es git push
(si usa un repositorio remoto). Espero que esto ayude, si lo hice bien :)
, ¡salud!