Thank you for submitting this RFE. Avoiding ignored directories makes sense for efficiency, particularly with large repos (such as ours!).
The main counterexample I'd like to mention is the one I've run into, which is migrating data in bulk into a Git repo from another source such as a different version control system. I manually audited the list of ignored files, as presented by SmartGit, in order to add any that needed to be preserved. I was unaware that the list was incomplete, and we're now discovering necessary files that didn't survive the migration.
If I'd known about this behavior, I could've used command-line Git to audit ignored files; however, since our repo contains around 30,000 files, that would have been significantly more tedious than using SmartGit's GUI.
I would perhaps suggest something like the following:
Checkbox in preferences, disabled by default, called something like "Include ignored directories when showing ignored files. (May impact performance.)" or "Showing ignored files also shows files in ignored directories."
When the user chooses to display ignored files (Ctrl+3), if SmartGit has detected any ignored directories, display a dialog informing the user that some directories are being omitted and directing them to the preference checkbox. The dialog may have a "Don't show this again" option.
The user is now aware of the behavior and the related preference item, and can choose to change the behavior on a temporary or permanent basis.
Even if the "Include ignored directories" option is enabled, to minimize performance impact, SmartGit may avoid scanning such directories when ignored files aren't being displayed. It could scan them at such time as the user enables displaying of ignored files.
Thank you for submitting this RFE. Avoiding ignored directories makes sense for efficiency, particularly with large repos (such as ours!).
The main counterexample I'd like to mention is the one I've run into, which is migrating data in bulk into a Git repo from another source such as a different version control system. I manually audited the list of ignored files, as presented by SmartGit, in order to add any that needed to be preserved. I was unaware that the list was incomplete, and we're now discovering necessary files that didn't survive the migration.
If I'd known about this behavior, I could've used command-line Git to audit ignored files; however, since our repo contains around 30,000 files, that would have been significantly more tedious than using SmartGit's GUI.
I would perhaps suggest something like the following:
Thank you for your consideration!