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!
Incremental updates without downloading whole setup for non commercial version
No everyone has a high bandwidth internet connection.
Is it possible to have a incremental update mechanism, so you don't have to download and install the whole software again?
Branches view: option to copy GitHub URL
Often I want to share my guthub branch with a co-worker. At the moment I have to open github and find the branch, then copy the url. Would be nice to have a content menu on the remote -> branch "Copy github url"
Allow keyboard searching in "Journal -> Select Auxiliary Branch"
Currently, this small dialog doesn't allow full keyboard searching -- it only searches the first character. In a repo with a lot of "sub-directory" branches (e.g. "feature/xxx/yyy") and the list is long, trying to find a branch is pain.
Allow iterative rebase to select commits (contents) for edition
Currently, I have to go to the command line and do `git rebase -i HEAD~3`, then this appears:
pick f7f3f6d changed my name a bit
pick 310154e updated README formatting and added blame
pick a5f4a0d added cat-file
# Rebase 710f0f8..a5f4a0d onto 710f0f8
#
# Commands:
# p, pick = use commit
# r, reword = use commit, but edit the commit message
# e, edit = use commit, but stop for amending
# s, squash = use commit, but meld into previous commit
# f, fixup = like "squash", but discard this commit's log message
# x, exec = run command (the rest of the line) using shell
#
# These lines can be re-ordered; they are executed from top to bottom.
#
# If you remove a line here THAT COMMIT WILL BE LOST.
#
# However, if you remove everything, the rebase will be aborted.
#
# Note that empty commits are commented out
So, if I would like to edit some commit contents, I would change it to:
pick f7f3f6d changed my name a bit
pick 310154e updated README formatting and added blame
edit a5f4a0d added cat-file
Then, git would use commit, but stop for amending. Allowing me to freely edit the git history, amending changes the the picked commit, or adding new commits after it. Once I am done with it, I can do `git rebase --continue` and git would rewrite the history with the new updates.
The current SmartGit interface for Iterative Rebase only allows-me to edit the commit message, it cannot edit like `use commit, but stop for amending`.
Files: Option to hide contents of untracked directories
Sorry if a feature like this already exists, but I haven't seen it yet.
In the git command line, if there is an untracked directory, the command git status only displays the name of the directory, but not its contents. This is very practical and I would love to see an option in SmartGit's Files view to get this.
Use case: Say you have a project that contains a large temporary directory (build artifacts, script output). Normally you would exclude this directory via .gitignore. However during development it may become necessary to do a quick backup of that directory, usually by renaming it and letting the project regenerate it. Now your renamed version does not exist in gitingore, so now there exists a directory with hundreds of files/subdirectories that will be deleted soon, but for the time being clogs up the Files view.
Having the option to show untracked directories as single directories instead of a huge number of files would be very helpful here. The command line client does it this way, so I think SmartGit at least should offer the option.
Indicate that a commit has been reverted in a later commit
In the Log Graph, if a particular commit (A) has been reverted in a future commit (B), add some indicator on commit A to highlight this status.
Ways to highlight include italicizing the text, graying out (graying out is being used for merge-commits), strike-through, different color, different font, smaller font size, etc. (I vote for strike-through).
Benefits: When reading a graph from bottom to top, it would be helpful to tell the user that this particular commit has been reverted. This allows the user to get even more meaningful data from the log.
I find it particularly useful when writing Release Notes, or to avoid making quick assumptions that a particular feature has been implemented just because a commit for it exists.
Potential implementation: It may be taxing to the CPU to scan the entire repository, so we could limit it to just visible commits (branches/refs that are checked).
See initial brainstorming page on Google Groups: https://groups.google.com/forum/#!topic/smartgit/_ARrXyUQzFU
Open the log for a file from the commit window
I often find myself copying the current draft commit message (in case something goes wrong), close the commit window, open the log for one of the files I'm about to commit and then re-open the commit window.
It would be nice to be able to open the log window for one of the files I'm about to commit from the commit window directly.
Branch coloring : do not count tags as branches
Since v18.1 : "The default log coloring now uses adedicated color for each selected refs (unless there are too much)"
This is stunning when having 4-5 branches checked, it really helps the log readability !
But I saw also that if I check the tags then they are counted as selected refs, and the log switch to 2 colors (white for current branch and purple for other branches).
May this count be done only on branches and not tags ?
Make SmartGit use the Freedesktop XDG standard
SmartGit currently creates a `.smartgit/` folder in the user's home directory on Linux. Most programs don't create a folder in the user's Home directory anymore and instead use the Freedesktop `$XDG` standard found here: http://standards.freedesktop.org/basedir-spec/basedir-spec-latest.html.
Using this standard:
- `$XDG_CONFIG_HOME` – says "configuration files" go to `$HOME/.config/`
- `$XDG_DATA_HOME` – says "data files" go to `$HOME/.local/share/`
- `$XDG_CACHE_HOME` – says "temporal/non-essential files" go to `$HOME/.cache/`
This is just a request to consider using this standard. It makes a lot of sense; it is easy for the user to understand, makes it easier to backup/locate/restore/manage/clear user's data, and creates less clutter in the user's home directory.
Thanks in advance...and thanks so much for everyone's hard work on this program – it's amazing!
Customer support service by UserEcho