-I pattern
Do not list those files that match the wild-card pattern.
Tree admite un patrón único que excluirá todos los archivos / directorios que coincidan.
Los archivos de ignorar de Git son un poco más complicados:
La exclusión puede provenir de múltiples archivos, $HOME/.config/git/ignore, la salida git config --get core.excludesfile, .gitignore(por directorio), ~/.gitignorey más (ver man gitignore).
Otro problema es que los patrones que treesoportan difieren de lo que hace git (como lo señaló @Brad Urani).
¡Agradable! ¿Estoy en lo cierto de que el hecho de que esto no elimine las líneas de comentarios de .gitignore causará problemas?
Brad Urani
Supongo que tampoco respetará los archivos .gitignore fuera del directorio de inicio
Brad
@BradUrani: he actualizado mi respuesta para usar gitcomandos para intentar encontrar el archivo. Lo que eso devuelva dependerá de la configuración que tenga.
DarkHeart
Esto no funciona para mí, creo que es porque mi ~/.gitignorees un enlace simbólico. He estado tratando de encontrar una manera de confiar gitpara decirme lo que se ignora, pero todos mis esfuerzos por encontrar la combinación correcta siguen teniendo dificultades o situaciones ambiguas.
Brad Urani
También parece tree -Ique respeta todas las opciones globales que .gitignoreme hace pensar que no hay una solución perfecta. La mejor aproximación que se me ocurrió anoche es echo "node_modules|tmp|_build" > ~/.treeignoreytree -I "$(cat ~/.treeignore)"
git ls-files.Respuestas:
Esto podría ayudar: enumere los
gitarchivos ignorados de una manera casi compatible para eltreefiltro:fuente
El árbol apoya la
-Ibandera.Tree admite un patrón único que excluirá todos los archivos / directorios que coincidan.
Los archivos de ignorar de Git son un poco más complicados:
La exclusión puede provenir de múltiples archivos,
$HOME/.config/git/ignore, la salidagit config --get core.excludesfile,.gitignore(por directorio),~/.gitignorey más (verman gitignore).Otro problema es que los patrones que
treesoportan difieren de lo que hace git (como lo señaló @Brad Urani).Pero podemos acercarnos ...
O como una función:
fuente
gitcomandos para intentar encontrar el archivo. Lo que eso devuelva dependerá de la configuración que tenga.~/.gitignorees un enlace simbólico. He estado tratando de encontrar una manera de confiargitpara decirme lo que se ignora, pero todos mis esfuerzos por encontrar la combinación correcta siguen teniendo dificultades o situaciones ambiguas.tree -Ique respeta todas las opciones globales que.gitignoreme hace pensar que no hay una solución perfecta. La mejor aproximación que se me ocurrió anoche esecho "node_modules|tmp|_build" > ~/.treeignoreytree -I "$(cat ~/.treeignore)"