Your comments

I am also running into this situation. Our projects consist of many repo's (> 50) and when background fetching is happening there is no way to interact with any of the repositories. Two possible solutions:

  • Only disable the UI for the repo currently being fetched in the background so that we can interact with the other repos. It is fine if it still disables interacting with multiple repos together, e.g. in a group.
  • Add a button to cancel the background fetches (possibly letting the current git operation complete, but not starting the next one as Jeff suggests).

Thanks for the implementation in SmartGit 18.1 The combo-box drop-down menu on the Ignore dialogue is precisely what I was looking for.

It would be handy to be able to do this even if only one repo could be selected at a time. When I said "Flat" view, what I mean is that when a (single) repo is selected, Smartgit can be configured to show all files in a flat structure, independent of sub-directories (within the repo). This is my normal way of working with a single repo. It agree it would be challenging to try implement this when multiple repos are selected/open/viewed at the same time, but I would be happy with the ignore option defaulting to current (or light-weight) behaviour for the multiple repo case.

I would also find such an ability useful. Our company makes use of many individual git repos (one for each library/module, which are sorted into categories (groups) in Smartgit). Being able to right-click and say "Open Repository As Well" or "Add to open repositories" would be quite helpful.

I do not see why there would be a conflict. The format of the pattern would change depending on which .gitignore the user chooses to use, and yes, the order of precedence of the .gitignores should still prevail (as they must do in SmartGit anyway).


An example. I choose to ignore the file "doc\Doxyfiles\doxyfile.cmake":

  1. If I choose to ignore using the root gitignore the result in the .\.gitignore is: "/doc/Doxyfiles/doxyfile.cmake"
  2. If I choose to ignore in the current folder, the result in "doc\Doxyfiles\.gitignore" is simply "/doxyfile.cmake"

Naturally there are a number of other options that could also be provided to the user:

  • Ignore recursively in sub folders
  • Add the ignore to the ".git/info/exclude" file, etc

However, I am most interested in the two choices I have indicated. Currently to ignore a file using only the root .gitignore requires me to leave SmartGit and either edit the file manually (which is quite tedious if you have many files in many (sub) folders) or use an external tool (such as TortoiseGit, which while less tedious will not allow the selection of many items in the "flat" view presented by SmartGit.)