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!

+2
Completed

Add button for explicit big file diff

Iulian Onofrei 9 years ago updated by Hyper Sonic 1 year ago 13

I have a big file which couldn't get diffed in the main window. So I increased the size limit in the preferences file, but now, every time I select it, the diff process starts automatically and hands the background thread of the app (the UI is not blocked though). Even if I just want to commit it.


For binary files, there is a button named "Force Text", which works similar to my idea, which sounds like this:


The user changed the diff limit size:

- Y:

- the user selects a file whose size is bigger than the default one:

- Y: a "Force Diff" button appears

- the user presses the button: the diff process starts

- N: the diff process starts

- N:

- the user selects a file whose size is bigger than the default one:

- Y: the "File is too large to display." message appears (optionally, with a button that (creates? and) opens the preference file, or better yet, move those configurations in the UI)

- N: the diff process starts


Let me know if I was clear enough!


Thank you,

Iulian Onofrei

+2
Completed

Add panel exposing the CLI (bash/cmd)

Thanos Politis 9 years ago updated by Thomas Singer 7 years ago 2

Add a panel that will be exposing the OS CLI opened in the project's folder.

+2
Declined

Better support when using SmartGit for Git and Mercurial at the same time

Craig Caulfield 9 years ago updated by Thomas Singer 4 years ago 1

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.

+2
Under review

Mercurial: support for creating and importing patches

Craig Caulfield 9 years ago updated by Thomas Singer 9 years ago 5

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.

+2

Enable editing git config

Robert Hannah 9 years ago 0
+2
Completed

Log: option to hide branch-labels in graph, if unselected in Branches view [SG-8680]

Marc Strapetz 9 years ago updated by Thomas Singer 7 years ago 2
Missing Git feature
+2
Completed

Log: custom tools should work on Files (as in the main window)

Marc Strapetz 9 years ago updated 7 years ago 2

Tools configured in the Preferences should work on the Log's File view in a similar way as in the main window

+1

Standard window: Tree view option in Files View

oozing-blade 2 weeks ago updated by Thomas Singer 2 weeks ago 0

File Views lacks Tree View option. When validating code changes not only code is checked but also files structure and files placement.

When file path gets obscured by ellipses having tens (or hundreds) of files it gets quite impossible to validate placement, replacements or movements of files is correct.

Image 945



Simple, classic, tree view would come handy for these cases.

Image 946

GUI Standard window
+1

Fixup a past commit and rebase autosquash

Cyril DD 3 weeks ago updated by Jeff Jensen 2 weeks ago 1

Ability, when committing changes, to fixup a past commit (if there are no merge conflcts for subsequent commits)

Suppose I have committed 

A > B > C 

..in that order. I realize I missed something on commit B, if I want to fix it I have to introduce a new Commit D, and make an interactive rebase to move commit D so it becomes A > B > D > C and merge commit B and D (we often refer to part of this process as a fixup)

I suggest improvements to the smartgit interface to be able to perform this automatically. Note that this procedure is now facilitated by the --fixup param when committing as explained here

Idea : in the commit window, we already have a "select" menu that can help copy previous messages. Introduce a similar "fixup" select menu, which allows selecting a commit similarly to "select", but when a previous commit is selected this way, transform the "commit" button so it becomes a "fixup" button and actually performs

git commit --fixup=[selected commit ref] # Commit indicating a fixup
git rebase -i --autosquash [selected-commit-ref]~1 # merge fixup commit into broken commit

(ans similarly for the other button "fixup and (force) push"

Image 941




References

https://stackoverflow.com/questions/3103589/how-can-i-easily-fixup-a-past-commit

Improve Git commands