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!
Better support when using SmartGit for Git and Mercurial at the same time
I use SmartGit for both Git and Mercurial, which is great: I have just one tool learn, and the same tool on Windows and on Mac. But, the commands and preferences for the two VCS are inconsistently implemented. For example:
The preference "Stash: Automatically save stash if Pull, Checkout, or Interactive Rebase fails because of local changes" works for Git but not Mercurial. Similarly, the Apply patch menu item uses the git apply command rather than the Mercurial import command even when pointing to a Mercurial repository.
SmartGit should be smart enough to know what sort of repository it is executing against and use the appropriate command, or tell us when that command hasn't been implemented.
Also, perhaps there needs to be separate preference tabs for Git- and Mercurial-specific preferences as there are some siginificant differences.
Mercurial: support for creating and importing patches
SmartGit allows you to create and apply a patches for Git, but not for Mercurial. Atlassian's SourceTree and the tool within Intellij IDEA have a context menu against log entries to create a patch from single or multiple commits.
Log: custom tools should work on Files (as in the main window)
Tools configured in the Preferences should work on the Log's File view in a similar way as in the main window
Add support for activating Python venv when switching between repositories
Many Python users work with virtual environments (venvs), typically one per project. For pre-commit hooks to run correctly, the appropriate venv must be active; otherwise, issues such as missing modules can occur (e.g., Pylint will report "module missing" errors if the wrong venv is being used).
A workaround that currently can be used is to launch SmartGit via scripts individually crafted per project to activate the respective venv, e.g.:
call C:\Users\username\PycharmProjects\project_name\.venv\Scripts\activate
C:\Apps\SmartGit\bin\smartgit.exe
However, this is not a general solution, since SmartGit allows users to switch between projects within the tool, which leads to the wrong venv being used again. It would be great if there was a way to have Smartgit automatically activate the correct venv of the respective project.
Ability to abort commit
Especially when pre-commit hooks are active, commits can take a couple seconds. Would be helpful to be able to abort the commit if you realize that you do not actually want to perform this exact commit while waiting for hook execution.
Standard Window: Customisable layout
The "Log Window" and "Working Tree Window" allow flexible customisation of the layout, so why not the "Standard Window"?
The left sidebar uses a lot of dead space, taking the entire height, and I can't see checked-out branches and stashes at the same time.
I want to give some of that dead space to the Changes view, ideally the full width of the window (I prefer side-by-side diffs).
Support signing commits with ssh keys
Given the recent slew of vulnerabilities in gpg (gpg.fail), al well as several years of recommendations by security experts (latacora, soatok), I'm currently phasing out gpg. In alternative to gpg, git also supports signing commits with SSH keys (gitlab, github).
It would be great if SmartGit could support SSH signatures.
Hi,
Documented the steps required:
https://docs.syntevo.com/SmartGit/Latest/HowTos/Configuration/Setting-up-SSH-commit-signing
Hope this helps
Daniel
Customer support service by UserEcho