¿Cómo hago un 'estado de git' para que no muestre archivos sin seguimiento sin usar .gitignore?

317

¿Cómo hago git statuspara que no se muestren archivos sin seguimiento sin usar .gitignore? Quiero obtener información de estado de modificación solo en archivos rastreados.

Ross Rogers
fuente

Respuestas:

498

Utilizar este:

git status -uno

que es equivalente a:

git status --untracked-files=no

Está un poco oculto en los manuales, pero la página de manual para el estado dice "admite las mismas opciones que git-commit", así que ahí es donde tendría que buscar.

Daniel Bruce
fuente
1
¿Dónde escribes esto? ¿En terminal o en archivo?
FrenkyB
1
Esa es una operación de línea de comandos; no es una edición de archivo de configuración git.
Ross Rogers
¿Qué pasa si lo he hecho? Git reset --hard <commit id>, luego git status -uno, no aparece nada, solo se muestran archivos sin seguimiento
Snow Bases
130

También:

git config status.showuntrackedfiles no
Bombe
fuente
99
Esto es ideal para un repositorio que siempre tiene archivos sin seguimiento como uno en su directorio de inicio para archivos de puntos.
Dave
15
Dave: Quizás el .gitignorelistado sea mejor para "incógnitas conocidas", mientras que es posible que desees ver "incógnitas desconocidas" que aparecen de nuevo.
Ross Rogers
15

Tenga en cuenta que, desde git 1.8.3 (22 de abril de 2013) , ¡sabrá sobre esto --untracked-files=noincluso si no agregó esa opción en primer lugar!

" git status" sugiere a los usuarios que busquen usar la --untracked-files=noopción cuando lleva demasiado tiempo.

Ver commit https://github.com/git/git/commit/5823eb2b28696bf0eb25f6ca35b303447869f85 :

En algunos repositorios, los usuarios experimentan que " git status" el comando lleva mucho tiempo.
El comando pasa algún tiempo buscando en el sistema de archivos archivos no rastreados.

Explique el compromiso alcanzado por la opción predeterminada de normalpara ayudar a los usuarios a tomar una decisión adecuada, antes de hablar sobre la variable de configuración.

La git statusdocumentación ahora declara:

Cuando -uno se utiliza la opción, se muestran los archivos y directorios sin seguimiento (es decir, lo mismo que especificar normal), para ayudarlo a evitar olvidar agregar archivos recién creados.
Debido a que se necesita un trabajo adicional para encontrar archivos no rastreados en el sistema de archivos, este modo puede tardar un tiempo en un árbol de trabajo grande.
Puede utilizar nopara git statusvolver más rápidamente sin mostrar archivos sin seguimiento
.

El valor predeterminado se puede cambiar utilizando la status.showUntrackedFilesvariable de configuración documentada en git config.

VonC
fuente
2
@ Tshepang gracias. He editado la respuesta para incluir el enlace adecuado, así como para agregar la confirmación exacta en la que se introdujo dicho cambio.
VonC
Soy nuevo en git: ¿puede decirme dónde escribir estos comandos para no mostrar archivos no rastreados? Intenté escribirlos en la terminal, pero todavía se muestran los archivos sin seguimiento.
FrenkyB
@FrenkyB ¿Qué escribiste exactamente en tu terminal (qué sistema operativo por cierto? Y qué versión de git estás usando?)
VonC
OS = Windows 10 Pro, versión de Source Tree = 1.9.10.0, ¿cómo puedo verificar la versión de GIT? Lo que he escrito en la terminal es: git commit -u --untracked-files = no. Todavía veo esos archivos en Source Tree.
FrenkyB