Your comments

If you want to test-drive, please download SmartGit 8.1 preview 4 and invoke Help | Check for Latest Build to get #9048. Then create a file, e.g. dark-theme.properties with following content:

button.background=inherit
button.foreground=inherit
combo.background=inherit
combo.foreground=inherit
composite.background=inherit
composite.background#instructions=#505050
composite.foreground=inherit
label.background=inherit
label.foreground=inherit
link.background=inherit
link.foreground=inherit
qTabFolder.background=inherit
qTabFolder.foreground=inherit
sash.background=inherit
shell.background=#3f3f3f
shell.foreground=#cfcfcf
styledText.background=inherit
styledText.foreground=inherit
tabFolder.background=inherit
table.background=#303030
table.foreground=#e0e0e0
table.background#filter.searchHidden=#303020
table.background#filter.warning=#302020
text.background=inherit
text.foreground=inherit
toolBar.background=inherit
toolBar.foreground=inherit
tree.background=#303030
tree.foreground=#e0e0e0
info=#808080
warning=#f0f080
error=#ff8080
directories#warning=#ff8080
branches#ahead=#f0c080
branches#behind=#80f080
branches#approved=#80f080
branches#rejected=#ff8080

then open smartgit.properties in an editor and add the line

smartgit.theme.file=C:/Path/to/dark-theme.properties

Restart SmartGit.

We've decided against this because it would be hard to show changes between left-base and left-result (right-base and right-result) in an easy-to-understand way.

Here is a screenshot how SmartGit would look:


Especially note the black texts in the toolbar, tree selection, checkboxes, and the still gray title bar and table headers.


Would you think this to be sufficient?

Strange, a couple of years ago people complained about Swing user interfaces not looking platform-specific, but now people complain if the user interface look platform-specific. It looks like always some people are complaining.

You will see this dialog, if rebase-vs-merge is not yet configured. The default of this dialog is already rebase. I reckon we can assume if the user intentionally selects Merge, then this is done for a good reason. You also can tell your co-workers to always set the option pull.rebase=true in their ~/.gitconfig files. Then they will not see this dialog.

What changes do you suggest?

The mentioned settings are stored in the repositories .git/config files like any other Git client does. We don't plan to override this default setting in SmartGit.


Usually, the used email and user name is stored in ~/.gitconfig. Maybe you can create a simple script that replaces the file with the private or company one?

Robert, please give the latest 8.1 preview a try. It's not what you are asking, but maybe helps a step forward.

I've created a git-changelog.sh with following content:

#!/bin/bash
git log --pretty=oneline $1..$2 > $3

and configured it in SmartGit: