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!

+1

Remove file from commit

Dan Gibson 6 years ago updated by Cerno_b 6 years ago 3

Sometimes I accidentally add a file to a commit when I don't mean to. I haven't pushed the commit yet, so I'd like to be able to edit the commit and select 'remove file from commit'.

+1

Hide warning about rebasing a merge commit

Mikhail Matrosov 6 years ago 0

I really like how SmartGit is smart when doing pulls. If you say it to
merge, it will merge, if you say it to rebase, it will rebase. If
there are merge commits to be rebased, it will ask you about whether
you are going to preserve them. In a pretty annoying manner... It will
show this dialog box "rebasing a merge commit might easily cause
troubles, how about merge instead?".

But there are a number of problems with this dialog:
1. It does not say much. "Can cause troubles"? Huh? If I did not know
how it works, it wouldn't tell me much. Currently I know of only one
"trouble": if I have resolved conflicts in the merge I am about to
rebase, I would need to repeat it. Tell me this. Anything else? Tell
me either.
2. There is no way to select a default behavior. When I pull, I have
this nice little dialog, where I can select a default behavior: pull
or rebase. Why I cannot clarify rebase behavior in the same dialog?
Like rebase with preserve by default.

I use this feature very often in our workflow:

  1. Create a dev branch. Develop it for some time.
  2. Fetch. Checkout master. Merge dev into it.
  3. Build and run tests.
  4. Push to master. Discover there are new commits in master.
  5. Pull master.
  6. Push again.

On step #5 I don't want to pull with merge, because it will mess up my first parent path. But pulling with rebase, I want to preserve the merge to make it clear dev branch was merged. I am only rebasing this one merge commit. I never got into troubles with this approach.

+1

"Hosting Provider" setup: Elaborate on errors

Sync 6 years ago updated 6 years ago 1

I was trying to set up my Hosting Provider, and kept getting a simple "401" error message.  My password is correct.


I switched to SourceTree to try out the same thing, and it let me know what was going on.


Can SmartGit do the same?  That would have saved me 15 minutes of retrying :)


Image 245


+1

Add optional warning when attempting to commit single file but other files are staged

Chris Kline 6 years ago updated 6 years ago 1

A common operation in SG is to right-click on a specific file and choose "commit". This stages (if necessary) the specific file and prepares to commit it. 


However, if other files are already staged, they will be added to the commit even if that was not the intention. This fairly frequently causes accidental commits in our codebase, because the user assumes SG is going to commit only the selected file, but ends up committing other staged files as well because they forget to double-check the pre-commit dialog.


This is particularly common when lots of files are modified, because that can result in some staged files being "offscreen" in the "Files" window at the time the user selects the individual file. 


SmartGit already has a similar warning when someone is submitting "staged modified" files (to ask if only the staged changes should be submitted, versus all changes), so there is precedent for this kind of helpful warning.


Example: In the image below I right-clicked on the highlighted .gitignore file to commit it. If I am in a rush and forget to check the pre-commit dialog, I'll accidentally commit 3 files instead of one.


Image 242

** Alternately (and perhaps ideally) SG would just disable the "submit" button when right-clicking a single file when other files are staged but not selected. This would prevent the problem entirely.

+1

Merge: when doing merge from tag add tag into commit comments

AlexMSU 6 years ago updated by Marc Strapetz 6 years ago 0

It would be nice to include tag information into commit message when merging from tag, something similar to the following:
"Merge tags/26.28.1(commit '9cfa861e02986dbed18dc83a3b3397699e3a4baf') into master"


If there are multiple tags behavior could be the same as for branches - use the first one from the list

+1
Completed

Log: maintain selected file when changing commits to make examining historical differences easier

Chris Kline 6 years ago updated by Marc Strapetz 6 years ago 6

When trying to understand the history of a change, it's common for someone to open the log window and then click back and forth on different commits to see what changed in them.


Currently, when the user clicks on a commit, the differences pane in the log window switches to display the file that is at the top of the Files window based on the current sort order. This makes it cumbersome to switch back and forth between commits to see what happened to a particular file because, unless that file happens to be at the top of the sort order in each commit, the differences pane keeps jumping around between files.


As an example, attached are two screenshots of what happens to the view when I switch between two changelists, both of which contain the same file "DBExternalViewManagerImpl.inl". 


I click on first commit and select DBExternalViewManagerImpl.inl in the files window:


Image 238



Then I click on next commit in log; DBExternalViewManagerImpl.inl does not remain selected in files window, and the contents of the differences pane therefore change:


Image 239



What I think the behavior should be is:

  1. the file selected in the current commit should remain selected when switching to another commit, so long as the other commit contains the same file.
  2. when switching to a different commit that does not contain the same file, it should switch to either:
    • The file that was selected most recently for this commit
    • Or the file at the top of the sort order, if no file was previously selected for the commit

#1 is the most important. #2 would really help when skipping around through multiple changelists that may not all contain the same files, but I understand that it would require a tiny amount of state tracking and may not be as easy to implement as #1.


Thanks for considering this request.


(Note: I filed this several years ago via email and it was filed internally as SG-9991. Since I cannot find it here on userecho, I have assumed it got "lost" and am re-filing it)

+1
Completed

Commit dialog: add convenience paste buttons for key words

Jeff Jensen 6 years ago updated by Thomas Singer 5 years ago 11

I regularly type "fixup! " and paste a copied hash into the commit window message box.


Since my hand is already on the mouse to click into the text box and paste the hash, it could easily click a "fixup!" button above the text box (to the right of the "Commit Message:" label) just before that and save the typing.


+1
Completed

New Log Frame: Add Commit Message view

Jeff Jensen 6 years ago updated by Thomas Singer 6 years ago 1

The Log window with the Repositories view and Branches view is a fantastic new feature.  With the Commits view now having the Working Tree and we can commit from the Log window, please add the Commit Message view to the Log window too.  I miss having the ability to pre-type commit message info as I make changes and/or stage files.


+1

Log: add any commit from the Log to the list of commits in Branches panel

Mikhail Matrosov 6 years ago updated by Marc Strapetz 6 years ago 0

When I open Log by double-clicking on a commit in the Journal, this commit appears under Commits node in the Branches panel. Thus I can use it as a root in the commits tree. I want to be able to conveniently add any commit from the log to this list in Commits node. So that I can use any commit as a root in the commit tree.


This would be very helpful in the following scenario. I am digging down the history, find relevant commit, and then make it the root of the tree to simplify further research.