tipos tag submodule remove qué existen etiquetas crear commits git subtree

tag - git subtree pull dice que el árbol de trabajo tiene modificaciones, pero el estado de git dice que no. ¿Lo que da?



qué tipos de etiquetas existen en git (5)

Si hago esto en uno de mis repositorios:

git subtree pull --prefix=frameworks/AquaticPrime --squash AquaticPrime

Entiendo esto:

Working tree has modifications. Cannot add.

Si hago esto (en el mismo lugar, por supuesto):

git status

Entiendo esto:

# On branch master nothing to commit (working directory clean)

No estoy muy seguro de lo que está pasando aquí. El comando git status implica que no tengo modificaciones, por lo que supongo que el tirón del subárbol git se refiere a modificaciones en una rama diferente relacionada con el subárbol, pero no está del todo claro.

¿Alguien puede proporcionar la iluminación?


Acabo de tener el mismo problema. Desde el origen de GIT, se produce un error cuando el comando git diff-index HEAD devuelve el resultado, incluso si el git status dice que el árbol de trabajo está limpio.

Para evitar este error, en mi caso, vuelvo a revisar la rama actual del árbol de trabajo, y todo parece estar bien: git checkout <branch>

Es un poco confuso, pero si alguien puede explicar por qué ...


Acabo de tener este problema, cuando:

  • añadido un subárbol;
  • se dio cuenta, lo agregué incorrectamente (a un directorio incorrecto);
  • eliminado con rm;
  • Intenté importarlo de nuevo (al lugar correcto).

Aunque puppet diff estaba (correctamente) sin mostrar nada, la git diff-index HEAD enumeraba cada uno de los archivos que acababa de eliminar como "eliminados", aunque nunca cometí nada (y mucho menos, push-ed).

Creo que este es un error en git (usando 2.7.0 aquí) ... Error o no, la solución es cambiar a cualquier otra rama (con el habitual git checkout .... ) y luego volver a la tuya. . Espero que esto ayude a alguien, incluso si no es el autor original.


Intente tirar sin --squash como se describe en esta pregunta de .


Tengo alrededor de esto ahora. Mi problema me pareció que el repositorio era completamente nuevo: nunca le había confiado nada. Una vez que envié un archivo al repositorio, pude superar este error.

Sin embargo, al usar el git subtree add C:/gitTest/repos/subA -d --prefix subA recibí el nuevo error:

fatal just how do you expect me to merge 0 trees?

Después de perder el tiempo por un minuto, me di cuenta de que requiere que se le pase una revisión específica. Así que este comando parece haber tenido éxito:

git subtree add C:/gitTest/repos/subA HEAD -d --prefix subA

Y obviamente no necesitas la bandera -d debug.


git reset --hard arreglé para mi

Desde git reset --help

--hard Restablece el índice y el árbol de trabajo. Cualquier cambio a los archivos rastreados en el árbol de trabajo desde que se descartan.