Gitflow: git flow start / finish informa cambios sin etapas cuando no hay ninguno para confirmar o enviar

Creado en 23 nov. 2010  ·  21Comentarios  ·  Fuente: nvie/gitflow

A veces, al realizar el inicio o finalización del flujo de git, el flujo de git informará:

fatal: el árbol de trabajo contiene cambios sin etapas. Abortar.

Sin embargo, no hay nada que comprometer ni nada que tirar o empujar hacia / desde el control remoto. La copia de trabajo está actualizada.

Tuve que solucionar este problema creando confirmaciones falsas de cambios en un archivo "readme.txt" para realizar estos pasos, pero esto es tedioso. ¿Hay otro comando que pueda usar para ver qué está bloqueando el comando git flow start / finish?

Comentario más útil

Simplemente haga estos comandos en su terminal:

git status
git add .
git status
git commit -m 'Commit typechanges'

Me funciona bien;)

Todos 21 comentarios

Proporcione una repetición de los comandos que conducen a este problema. Eso definitivamente facilitaría el análisis de las causas de este problema. Trate de que sea lo más breve posible.

Esto podría suceder cuando borra archivos y no se compromete. Verifique los archivos preparados con git diff --cached y confirme.

No hay salida con git diff --cached . ¿Alguna idea de cómo solucionar el problema?

Tengo el mismo problema. ¿Encuentra alguna decisión?

La solución más sencilla es confirmar los cambios, eliminar el repositorio y volver a clonarlo.

muchas gracias

La mayoría de las veces, el error ocurre con eGit en ide's basados ​​en Eclipse , cuando uso git bash o tortoise git este error no aparece

git reset - ¡hard origin / master puede salvarle la vida!

Sin embargo, es muy extraño ejecutar:
estado de git
y repetir el comando funciona como una solución en mi entorno. :-)

estamos teniendo el mismo efecto que @georgezlatev trabajando en MAC OS X con intellij Idea 13. Parece que git-flow no registra una confirmación de manera oportuna ;-)

¿Se solucionará esto?

Solo obtengo este error cuando intento obtener el final del flujo desde un subdirectorio. Funciona desde el directorio raíz de repositorios.
Animo amigos

Aprecio que este hilo es antiguo, pero estoy seguro de que otros seguirán recibiendo este error y encontrarán este hilo. Estoy usando SourceTree y recibí este error. Me las arreglé para solucionar este problema haciendo clic con el botón derecho en la rama de mi función y luego fusionándome en desarrollo / origen. Luego pude impulsar mis cambios comprometidos y eliminar la rama de funciones.

La mejor opción sería si los scripts ejecutan un estado de git antes de intentar finalizar una función:

if output = $ (git status --porcelain) && [-z "$ output"]; luego
# terminar
demás
# error normal
fi

¿Es esto también un problema al finalizar una rama de revisión / revisión?

si. con el complemento Intellj-Gitflow y en Bash.
cuando ejecuto un 'estado de git' en bash y finalizo la función / lanzamiento / revisión, funciona.

En SourceTree recibí este error (estaba tratando de terminar una función actual) cuando SourceTree mostró que no había cambios. No fue hasta que cambié a la Terminal e hice un estado de git que mostró un cambio de tipo a un archivo que no se había comprometido (porque no se mostró en SourceTree). Los cambios que hice en el proyecto fueron un reemplazo de dos archivos .framework, por lo que se produjeron muchos cambios internos en esos archivos .framework por su apariencia. En última instancia, el error de SourceTree fue de hecho correcto, pero estoy decepcionado de que SourceTree no pudiera mostrarme este cambio que me impedía terminar mi rama de funciones :(

Confirmo que el estado de git me ayuda a ver cuáles son los cambios de un escenario

git reset --hard me funciona en tales casos

git reset: me costó trabajo ya que el estado de git no mostraba ningún cambio no confirmado.

Simplemente haga estos comandos en su terminal:

git status
git add .
git status
git commit -m 'Commit typechanges'

Me funciona bien;)

Yo tuve el mismo problema. Pude confirmar la rama de características pero no hacer 'finalización de características'. Cambié al directorio raíz y ejecuté git flow feature finish, Y funcionó.

¿Fue útil esta página
0 / 5 - 0 calificaciones