Skip to content

Instantly share code, notes, and snippets.

@jpwilliams
Last active May 7, 2025 19:39
Show Gist options
  • Save jpwilliams/dabff82b0ceb95dd57a7552ea7f2d675 to your computer and use it in GitHub Desktop.
Save jpwilliams/dabff82b0ceb95dd57a7552ea7f2d675 to your computer and use it in GitHub Desktop.
Tree using .gitignore

Uses tree along with a .gitignore file to filter results. Defaults to ignoring node_modules if no .gitignore can be found in the current directory.

Would be nice if it used all relevant .gitignore files rather than just the one in the current directory.

tree -C -I $((cat .gitignore 2> /dev/null || echo "node_modules") | egrep -v "^#.*$|^[[:space:]]*$" | tr "\\n" "|" | rev | cut -c 2- | rev)
@jpwilliams
Copy link
Author

Made gitree to resolve this issue.

@localhostdotdev
Copy link

Made an alternative version: https://gist.github.com/localhostdotdev/78f6a372a8de4cfed6fe4268bae7f8a3 (You have a lot of code I didn't want to review and < 10 downloads a month)

@brunos3d
Copy link

brunos3d commented May 7, 2025

Just use tree --gitignore

@jpwilliams
Copy link
Author

@brunos3d Nice! Looks like it's available since 2.1.0!

@brunos3d
Copy link

brunos3d commented May 7, 2025

@jpwilliams Nice work btw, thanks for the attention! 🥳

hanshake

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment