Git – rm equivalente para "agregar".

Si está utilizando Git desde la command-line, ¿hay alguna manera de eliminar de un solo golpe todos los files que se eliminarán en la list Modificado pero no actualizado? En lugar de hacer elimina manualmente usando comodines.

Los files que se muestran como eliminados en la sección de estado "Modificado pero no actualizado" se eliminan del tree de trabajo pero no del índice. Para organizar la eliminación en el índice (es decir, eliminar el file del índice), puede hacer lo siguiente:

 git diff -z --name-only --diff-filter=D | git update-index --remove -z --stdin 

--diff-filter=D muestra solo las diferencias al índice que son files eliminados, --name-only solo imprime su nombre y -z usa NUL para separar los nombres de los files para que no tenga que preocuparse por los nombres de los files con embedded nuevas líneas. update-index luego elimina los files dados del índice.

Si tiene una versión de xargs que admita -0 , podría hacer un poco más simple:

 git diff -z --name-only --diff-filter=D | xargs -0 git rm 

Lo siguiente debe representar todos los files, ya sean eliminados o no, en el índice:

 git add -A 

Bueno, los files enumerados en Modificado pero no actualizado ya están en el índice. Puede descartar sus cambios usando git checkout .
Para eliminar files que son nuevos, pero que no se han agregado al índice, puede usar git clean .
Pero para eliminar files que están modificados y en el índice … bueno, no hay una solución fácil, probablemente tenga que usar una combinación de git rm y git ls-files .

EDITAR:
git ls-files -m debe listr los files que está buscando. Combínalo con git rm y listo:

 git-ls files -m | xargs git rm // NOT TESTED 

EDITAR:
Probablemente malentendí una parte de tu pregunta. Mi solución eliminará todos los files enumerados en Modificado pero no actualizado . Si desea eliminar los files enumerados como eliminados , debe usar git diff como muestra Charles Bailey en su respuesta.