Share your ideas on how to improve SmartGit!
This is no support platform! To report bugs or request support, please contact us directly. If in doubt ask us.
First search for a similar request and add your votes or comments there.
Take the time to describe your request as precisely as possible, so users will understand what you want. Please note that we appreciate your time and input, but we don't give any guarantees that a certain feature will be implemented. Usually, a minimum requirement is a sufficient number of votes. Hence, please don't comment like "when will this be implemented", but vote instead.
Follow the stackoverflow.com writing guidelines.
Thank you for your help!

Dynamic light/dark theme
The theme option "automatically select light/dark" is really nice to adopt to operating system theme settings. However, it is usually the case these days that e.g. macOS changes dark/light automatically during the day depending on daylight etc. At this point almost all other applications dynamically make the switch while using them, but SmartGit needs to be restarted each time the theme changes. This means you have to restart at least once or sometimes twice every day.
It would be really nice if the light/dark switch happened truly dynamically, not requiring a restart.

Apple Mac M1/ Apple Silicon Native support.
Hello, I could not help but notice that Smartgit is A) a Java-based app and on mac, you bundle JRE.
and B) the Smartgit on apple Mac m1 arm chips runs via Rosetta2 Intel emulation.
I have managed to make the app quite usable by using manually installed Git executable via homebrew, but I noticed that Zulu has compiled and released both Java 11 LTS version and latest java 15 version for mac M1 arm which runs natively and is quite good and quite fast.
I have looked into overriding the java version used in smartgit but do not wish to mess about too much.
Do you think perchance you could release your next mac dmg with a native arm JRE or the ability to override the JRE?.
Think it would be WAYY better if smartgit worked natively on the latest mac platforms. (perhaps have an alternative arch dmg download)

GitHub, GitLab, Bitbucket: support for multiple accounts
Perhaps my use-case is pretty specific, but I have multiple GitHub accounts that I use for very different purposes. Because both accounts have private repositories, if I want to switch between the two accounts, I need to go into preferences, remove the current GitHub account, add the new account (generating a new OAuth token) and then continue making commits etc.
It would be very convenient to be able to have multiple accounts with the OAuth tokens / credentials saved, so that I could quickly switch between them. They don't need to both be active simultaneously. Ideally they could also be associated with specific repositories, so that if I open repo A, SmartGit automatically switches over to GitHub account A, and if I switch to repo B, SmartGit switches over to the corresponding GitHub account B.
I'm not sure how many other people need this sort of thing, but it would help me out a bunch, and I imagine it wouldn't be super complicated to implement...

Branch rename should ask whether to rename the tracked one too or not
- Have a branch named A
- Push it to origin
- It starts tracking origin/A
- Rename the local one to B
- Delete the remote origin/A
- Push the local B to origin
It gets pushed to origin/A.

Log View: Open multiple submodules at once
In the Log View, submodules are all listed below the currently opened repository. Once a repository is opened all submodules logs are closed. Right now we can manually open the logs of the submodules one by time but we cannot open them by group selecting them and opening them at the same time.
Ways that are used to open submodules logs:
- Double-click the submodule name
- Select submodule and press the "enter" key.
There is currently no way to open multiple submodules. Even though we can select multiple submodules there is no option to open them. Pressing the "enter" key does not open them when multiple submodules are selected.
For projects that dozens submodules or more, it becomes a really tedious task to open them individually one by one when there are a lot of them.
Repeatedly pressing down and enter alternatively is working but also frustrating because focus on the current selection change once the submodule is opened.

Log: option to show/filter only for first-parent commits [SG-12254]
For a more general approach, see: https://smartgit.userecho.com/topics/805
When grepping for commits I'd like to filter out any commits that are not part of the mainline history. From the command line I can do this by providing the '--first-parent' option.

Add "fast global search" capability for fast access to commit info and SmartGit commands
I would like to request a "fast global search" function similar to the "fuzzy finder" in the GitKraken client:

This provides instantaneous access to searching commits, accessing client commands, and initiating git operations in a single operation.
Presumably it accomplishes this by creating some sort of background index using Lucene or something else.
Adding this would greatly improve the usability of SmartGit in various ways:
- Avoid the slow, concentration-breaking process required to find commit info in the current SmartGit: 1) open log window, 2) wait for it to populate, 3) type search terms, 4) wait for log to re-filter, 5) search through the filtered results to find the right commit, 6) click on commit to see the details)
- Avoid the frustration (see request 1, request 2) of trying to find SmartGit options that are currently spread across at least 5 different modal dialogs, many with nested sub-sections.
- Make it easier to use SmartGit via the keyboard by removing the need to memorize keyboard shortcuts
- Potentially (assuming some sort of background index), augment existing tools to provide faster access to commit data or to find associated commits. One idea might be to store "related commits" (commits that mention each other, commits reverting other commits, cherrypick commits and the original commit) in the index, so when looking at a commit you can easily jump to the "related" ones.
- Help speed up searching while avoiding excessive memory use (see Marc's comment in this thread)
But mostly I just want an instantaneous way to search the commit history.

Log, Branches view: add checkbox toggle to hierarchical branches
I have the following branches :
projectA/features/featureA
projectA/features/featureB
projectA/bugs/bug1
projectA/bugs/bug2
which are collapsible via the triangle button, however the is no checkbox to toggle ON/OFF ALL of the branches in this hierarchy (i.e. turn on/off all the branches in projectA). Currently such option only exits for the "local Branches" and "remote Branches" (the 3 state toggle on/off/previous). I would like to have this kind of 3way toggle option for any group of branches in a branch hierarchy... meaning projectA should have a 3-way toggle.. and features and bugs (inside of projectA) should have a 3way toggle.
Note: the right mouse button shows an option to toggle (space) the projectA group of hierarchical branches however this doesn't do anything.

Ability to edit tags
We can create tags and annotated tags, but there seems to be no way to view the annotation, edit the annotation, or rename the tag, other than deleting it and re-creating it.

show BOM state in Changes window
How about to show the state and change of BOM(byteorder mark) in the Changes window.
It is tedious work to check whether the byte order mark is in the desired state.
Customer support service by UserEcho