Your comments

When solving a difficult conflict (sometimes it takes more then 10 minutes to understand how to solve), it's easy to forget that Conflict Solver window is already open and open a new one. That easily becomes confusing, especially if some conflicts were already solved in previous window.


Having SmartGit re-activate the old window instead of opening a new window will solve that.

Maybe not close them, but just warn that Conflict Solver state is no longer in sync with working tree.


Here's how current behavior can cause problems:

1) Start rebasing
2) Run into conflict
3) Open conflict solver
4) Open many more windows to figure how to solve conflict (yes, some conflicts require quite an investigation to solve!)
5) Forget you have conflict solver open
6) Open another conflict solver
7) Solve conflicts
8) Continue rebase
9) Run into new conflicts
10) While alt-tabbing through open windows by accident open an outdated Conflict Solver

11) This is quite confusing. Also, if you actually save now, you will overwrite file with an outdated version of it.

I also use empty commits, currently I create one in every new repository (that helps as a workaround to difficulties with modifying root commit in git, and other minor problems).


I think it can be reasonable to add a new button to error message "There is nothing to commit".

I solve the same problem by creating intermediate commit, amending it later. Doing it via commits lets me have all the git features:

1) I can push it to finish later

2) I can see diffs since last commit

3) I can rebase it

4) ...


Handling it via commits does not need an extra button.

Do you know about "Select from Log..." button in Commit dialog? Or is it a matter of handy hotkey?

And yes, I totally agree that it shall be clear which commits are already processed before conflicts and which commit caused conflicts.

As someone who asked for "Base File" thing for years and finally convinced SmartGit team to implement it, I must also admit that the feature shall be more visible :)


As for the icon, I can imagine 3 "pages", left one with red diffs, right one with blue, and center one half red, half blue. You can also add a magifier to it.

Have you tried using 'Window' menu that has a list of all opened windows?

I don't think the button is needed, at least for me. I also create partial commits, but this will usually involve multiple files, so I will close the index editor anyway. Also, I like to double-check the commit contents before committing.


However, there is indeed a problem of stale windows, I notice it a lot especially with conflict solver. Solving conflicts is hard, so I will often minimize conflict solver to check something else. And sometimes I forget those minimized windows, remembering them only after the conflicts are solved already.


I think it can be reasonable if SmartGit detects windows whose contents are outdated.

We also use Kerberos authentication. We do that through modified Putty 3rd party application and "Use system SSH client" in SmartGit settings.


I did the following:

1) Added the proposed setting

2) Switch to "Use SmartGit as SSH client",

3) Restarted SmartGit


However, SmartGit will now ask for Private Key / Password. It seems that the setting changes nothing.