tag - git rebase fatal: se necesita una única revisión no válida en sentido ascendente –i
git tag best practices (2)
El problema es el guión en tu –i. Es un en-dash (U2013) en lugar de un guión (U002D). Confirmé esto copiando tu guión y buscándolo en http://unicode.scarfboy.com . Cambiarlo a -i en su lugar.
La pista fue el mensaje de error "invalid upstream –i". Git no reconoció su –i como una bandera y en su lugar lo interpretó como el parámetro en sentido ascendente.
Estoy tratando de chillar varios compromisos juntos. Cuando utilicé
git rebase –i HEAD~8
Tengo un fatal
fatal: Needed a single revision
invalid upstream –i
Aquí hay una parte de los registros de confirmación: git log
Todo el historial de confirmaciones del repositorio de Github correspondiente está aquí: https://github.com/yikouniao/YukiLog/commits/master
Edit1:
Cuando usé git rebase –i HEAD~2
, obtuve el mismo resultado.
Edit2:
No sabía que había modificado el archivo .gitconfig
, editor = notepad2
se agregó al archivo. Después de eliminar editor = notepad2
, todo está bien. Luego volví a basurar y squanshed 8 cometer con éxito.
Varias opciones:
No está en una rama (
Detached head
) o tal vez está tratando derebase
derebase
o la rama incorrecta.
rebase
la sucursal que desearebase
y vuelva a intentarlo.no tienes 8 confirmaciones en tu historial (tienes 7 o menos)
prueba:
git rebase -i --root
Aquí está la documentación de la bandera --root
y por qué funcionará para usted.
--raíz
Rebase all commits reachable from <branch>, instead of limiting them with
an <upstream>.This allows you to rebase the root commit(s) on a branch.
When used with --onto, it will skip changes already contained in `<newbase>`
(instead of `<upstream>`) whereas without --onto it will operate on every
change. When used together with both --onto and --preserve-merges, all root
commits will be rewritten to have `<newbase>` as parent instead.`