SmartGit Changelog

What's new in SmartGit 23.1.3

Apr 22, 2024
  • Fixed Bugs:
  • Refresh:
  • config: possible internal error if config file ends after subsection name
  • possible "ghost" modified state related to invalid "text=<value>" in .gitattributes
  • Simple hosting providers: Domain input field is missing
  • Linux:
  • default dark theme: assertion showing comment
  • table columns too narrow by default
  • MacOS:
  • env-var parser fails if `pwsh` is configured
  • Reveal in Finder: always shows an empty output dialog
  • WSL: if appending Windows path is disabled, browser windows can't be opened
  • Other Noteworthy Changes:
  • Updated Chinese translation
  • Company configuration:
  • Allow to have fixed Git executable version by configuring `executable.requiredExactVersion`
  • On-premise license server:
  • About dialog: show details about on-premise license server
  • Setup: improve warning message in case of rejected authorization (LDAP)
  • Setup/Register: prevent requesting license if Git email address is not configured
  • Working Tree window:
  • Show Changes: introduce low-level property `showChanges.askForIndexAndWtModifiedFiles` to show selection dialog for wt-index-modified files
  • Refresh (macOS): added low-level property `core.status.ignoreGenericFileSystemExceptionOnMacOs` to work around "Operation not permitted" error caused by inaccessible directories

New in SmartGit 24.1 Preview 4 (Apr 16, 2024)

  • New Features, Improvements:
  • Hosting Provider improvements:
  • Separate configurations for "cloud" and "enterprise"
  • GitHub:
  • Support OAuth-authentication for Git executable with multiple remotes
  • Show warnings which GitHub reports about OAuth-inaccessible organizations
  • Standard window:
  • Submodule toolbar button with popup for faster switching to submodule; removed previous Submodule category
  • Fixed Bugs:
  • Clone: URL input field was not preselected if clipboard contained URL
  • Directories view (Standard window, Log window): sorting was not case-insensitive as in other parts
  • Preferences, Hosting Providers: double-click did not invoke Edit
  • Push: internal error when trying to push multiple repositories at once
  • Linux, MacOS: cloning from URL did not work (URL was treated as file)
  • Other Noteworthy Changes:
  • Clone, Repository selection:
  • Allow filtering by group
  • Ability to repository copy URL
  • File editor (git config files): optional auto-save
  • Hosting providers:
  • Hid simple providers by default; can be enabled with low-level property
  • Hid "Use oauth-token for repository authentication (instead of password)" - use low-level properties `*.useTokenForRepositoryAuthentication` for not recommended password access
  • Refresh:
  • Performance improvements for index-only changes, e.g. after Stage
  • Do not display index path for case-changed directories
  • Standard window:
  • Commit view: during rebase show the rebased branch instead of "HEAD"
  • Removed inline help controls
  • Reduced space between toolbar buttons
  • MacOS:
  • Environment variable detection: invoke shell with interactive option (-i)

New in SmartGit 24.1 Preview 3 (Mar 22, 2024)

  • New Features, Improvements:
  • Clone:
  • Easier cloning from hosting providers
  • The hosting provider repositories are shown in a tree structure instead of a table
  • Fixed Bugs:
  • Changes view, Compare, ...: several problems resolved for display of non-US-ASCII characters that are not supported by the selected font
  • Hosting providers: for some configurations the Domain input field was missing
  • Refresh (config): possible internal error if config file ends after subsection name [CgConfigState.parse Buffer.nextGetIndex BUE (2)]
  • MacOS: on some systems the row height of tree and table controls was increased
  • Other Noteworthy Changes:
  • Split Commit:
  • Continue: if all changes of the original commit were committed, allow to skip the confirmation dialog
  • Updated SWT
  • Standard window:
  • Branches: improved anchor branch selection (source vs. target branch) for pull requests

New in SmartGit 24.1 Preview 2 (Mar 11, 2024)

  • Fixed Bugs:
  • Standard window:
  • Graph view: for multi-selection the commit popup was shown when clicking at ref
  • MacOS:
  • Commit, Line Length Guides: if the message contained tab characters, the max-length-bars were drawn at wrong position
  • Environment variable detection failed if `pwsh` was selected
  • Windows:
  • Commit, Rewrap: wrapped incorrectly
  • WSL: if appending Windows path was disabled, browser window could not be opened
  • Other Noteworthy Changes:
  • Clone:
  • The local path is now split into parent directory and directory name making it easier to place repositories into one or more parent directories
  • Even for the first repository a path is suggested
  • I18n: updated Chinese translation
  • Preferences, Hosting Providers, Add: use popup button to select the type of repository
  • Repository Search:
  • If all repositories and groups were deleted before opening the Repository Search, it will group them by path like the repositories found during the Setup wizard
  • Setup wizard: stream-lined
  • Main window selector became first page
  • Git executable and SSH client are configured by default and can be changed in the preferences
  • Updated SWT:
  • Fixing drawing of non-US-ASCII characters in the Changes view and Compare
  • Log and Working Tree windows:
  • Files: "Renamed Path" shows new (target) path for rename sources
  • Standard window:
  • Improved keyboard navigation

New in SmartGit 23.1.2 (Feb 20, 2024)

  • Fixed Bugs:
  • Blame:
  • by-author-coloring is always dark, even with light theme
  • Branches view:
  • toggling grouping option in hamburger menu did not trigger refresh
  • Commit view:
  • Rewrap (Windows): introduced additional lines/spaces
  • File Log:
  • possible internal error in case of missing objects
  • Hosting Providers:
  • Azure: client certificates did not work
  • Bitbucket:
  • own comments may not be editable
  • Merge to Local did not work for SSH repositories
  • possible dead lock opening a project for some hosting providers, e.g. BitBucket
  • GitHub: possible error "Object 'id' not found" related to pull request reviewer assignments
  • GitLab: possible internal error for redirected repositories
  • Open:
  • for worktree with mismatch between Git admin pointers, the more unexpected repo will be opened
  • for worktree with non-existing Git admin pointer, opening fails
  • Refresh:
  • possible internal error if config file ends with subsection quote (`[remote "`)
  • possible internal error for large commit dates, e.g. year 2286
  • inefficient refreshing for large repositories with many submodules
  • Low-level property `json.graphQL.ignoreNullArrayElements` did not work properly
  • Log window:
  • all refs should be displayed by default (regression since 22.1)
  • Standard window:
  • tabs: internal error related to (unintentional) tab dragging while a dialog occurs
  • Delete/Move to Trash (macOS): did not refresh correctly after removing `.git` file
  • Other Noteworthy Changes:
  • Setup: improved handling of default files
  • Log window:
  • Comments: Edit should not be enabled if editing definitely is not possible
  • Log, Working Tree window:
  • Files view: "Renamed Path" column should show new (target) path for rename sources
  • Log, Standard window:
  • Save As: executable bit from repository file should be preserved

New in SmartGit 24.1 Preview 1 (Feb 12, 2024)

  • New Features, Improvements:
  • Syntax coloring:
  • Support for Gettext .po files
  • Log window, Standard window:
  • Added the power-user feature "Rollback To" which allows to set the working tree or index to the one of the selected commit
  • Add Remote dialog: for GitHub forked repositories without an upstream remote, it will be suggested
  • Standard window:
  • Added Edit Ignore File to find a Git ignore file that ignores a certain file, or edit one of the Git ignore files
  • Submodules: if "submodule.<name>.active" can't be parsed, it should be considered active (not inactive)
  • Fixed Bugs:
  • Add Remote: dialog should forget failed previous remote if the repository was changed
  • Add Submodule wizard: second page could become too wide
  • File Tables (Std/Log/WT): when filtering for ignored files, matching files should be displayed
  • Preferences:
  • Git executable page: Git version was not shown if this page was last used before closing the dialog
  • Pull: inactive submodules must not be initialized
  • Standard window:
  • Add Remote did not remember a failed url/name pair
  • Graph: context menu may become disabled in case of concurrent background refresh
  • Index Files: file sorting should not be influenced by Working tree state
  • Other Noteworthy Changes:
  • Updated bundled Git to version 2.43.0
  • Background Fetch: initialized submodules are fetched now even if deactivated
  • Changes view:
  • Goto Prev/Next Change: won't move the caret into the opposite direction, e.g. if caret is before first/after last change in file
  • Changes view, Compare, Conflict Solver, ...:
  • The focused selection color is now kept until a different text control is getting focused (before even showing a context menu or the Find file dialog caused the harder to see unfocused color to be used)
  • JIRA resolve dialog: improved texts
  • Push: for a forced push the confirmation branch shows the branch name
  • Repository Search: starting a manual search aborts now the automatic one
  • Startup logging to console has been reduced
  • Submodule | Deactivate: works now on multiple selected submodules
  • Syntax coloring:
  • Markdown: several improvements and fixes for quotes, underscores and <links>
  • Verilog: several improvements and fixes for number literals without bit count, or with ?xz states, backtick constants, missing keywords, identifiers starting with underscores
  • Standard window:
  • the Commit button is now disabled if there is definitely nothing to commit
  • Open in Browser (GitHub): when invoked on commit, open <project>/commit/<sha> instead of <project>/tree/<sha>
  • Ignore: should only be available for ignorable files
  • Tabs:
  • The middle-mouse-click should trigger on non-dragged mouse-released
  • The left-mouse-click should only select if no modifier is pressed
  • The left-mouse-click with Shift held should close the tab (similar to middle-mouse-click)
  • Working Tree window:
  • If a subdirectory inside an open repository is selected, the title will keep showing the repository

New in SmartGit 23.1.1 (Dec 8, 2023)

  • Fixed Bugs:
  • GitHub email address confirmation dialog: selecting the *Always use default email address* radio button wrote empty email address to `.git/config`
  • Azure DevOps: OAuth-authentication for repository was broken (unless Git config "useHttpPath" was set)
  • Investigate: under certain unclear conditions an internal error could occur when closing the Investigate window
  • Standard window:
  • Commit: should not allow to create empty commit even if repository is empty
  • Linux: several problems with forced light theme on dark system theme
  • The background color of the Std, Directories table is dark gray instead of light gray
  • The caret in text fields is not visible
  • The preferences tree uses light foreground on light background for the selected node
  • MacOS: click-dragging a table item might cause an internal error under unclear conditions
  • Other Noteworthy Changes:
  • Branches view:
  • When using `branchBrowser.showClassicAheadBehindNumbers`, colors are used (as in before SmartGit 22.1)
  • Log: added low-level property `core.remote.configNamesToIgnoreForUrlLessRemotes` to hide incomplete remotes (that are shown by `git status`)
  • Some i18n fixes

New in SmartGit 23.1.0 (Nov 24, 2023)

  • Fixed Bugs:
  • Refresh: possible internal error while concurrently adding LFS objects

New in SmartGit 23.1 RC 6 (Nov 23, 2023)

  • Changes view:
  • Staging added block may not work anymore (regression in 23.1 RC 5)
  • Syntax coloring:
  • Verilog: number literals: did not support exponential representation, upper-case base characters and ommitting the size
  • Working Tree window:
  • Pull toolbar button did not show popup menu if Branches view was selected
  • Log window:
  • Files view for committed files: external tool from directory context menu ignored selected directory
  • Other Noteworthy Changes:
  • Stash-on-demand dialog: optionally without Discard button by setting the low-level property `stashOnDemand.offerDiscard` to `false`
  • Updated translation

New in SmartGit 23.1 RC 5 (Nov 10, 2023)

  • Changes view:
  • Possible internal error when invoking Stage Line
  • File Compare/Conflict Solver:
  • Internal error pressing Shift+Tab depending on the selection
  • File Log: possible internal error when clicking ref-link in Commit view
  • Pull (Working Tree, Log window): did not work any more
  • Refresh (working tree): worktree definitions (.git/worktrees/<branch>/gitdir) with relative path should better be honored
  • Stage: possible internal error when staging a file in the root directory of a partition mounted to a NTFS directory (Windows)
  • Standard window:
  • My History: internal error for a diverged local, tracked branch
  • Pull: should not auto-forward branchs which are attached to worktrees
  • Start Feature dialog: the dialog is too large if no main branch selection is showing now, but for other repositories

New in SmartGit 23.1 RC 4 (Oct 29, 2023)

  • Fixed Bugs:
  • Changes view:
  • Possible internal error when opening file with comments which is too large to display
  • Images viewer: zooming is incorrectly handled by mouse position
  • Refresh (Working Tree): possible internal error after switching Git's "core.ignoreCase"
  • Remove Worktree (Working Tree window): error `GIT_DIR for repository at '...branch' does not exist.`
  • Stage: possible internal error when staging a missing file while concurrent processes recreate this file
  • Syntax, Markdown: styling did not end at begin of new list item, header, ...
  • UI: some checkboxes and radio buttons were incorrectly layed out (which was only noticable on certain systems)
  • Log and Standard window:
  • Massive performance regression for the working tree status (since version 21.2)
  • Log window:
  • Most tools were disabled if, e.g., the Branches view was selected

New in SmartGit 23.1 RC 3 (Oct 16, 2023)

  • New Features, Improvements:
  • Syntax coloring:
  • C(++): show valid and invalid escape sequences (fix)
  • Java: support more invalid char literal (escape) sequences (fix)
  • Fixed Bugs:
  • in some dialogs checkboxes or radiobuttons are incorrectly layed out
  • possible internal error after registering hobby license without restarting
  • Log, Commits view: temporary memory leak after closing repository
  • Standard window:
  • Start Feature:
  • main branch suggestion should honor current head
  • if multiple main branches are configured, ahead main branch may be reset back without confirmation
  • Working tree window:
  • permanent) memory leaks after closing repository
  • Other Noteworthy Changes:
  • Changes view, images diff: limit the size of images to (by default) 5000 pixels in each direction (low-level property `org.eclipse.swt.internal.imageLoader.maxSize` configures this limit)
  • e.g. to avoid possible out-of-memory error for small SVG files on Linux)
  • File Compare and others: remove fix for non-US-ASCII characters
  • those which have problems with increasing row-heights caused by non-US-ASCII characters should set the low-level property `org.eclipse.swt.internal.styledtext.additionalTextForSizeTest` to contain such character(s)
  • Git-Flow Finish: for external Git-Flow, show information explaining why tag name can't be customized
  • Standard window:
  • Start Feature: improve "move into feature branch" dialog

New in SmartGit 23.1 RC 2 (Oct 5, 2023)

  • New Features, Improvements:
  • Syntax:
  • ANTLR: support for code blocks
  • Cmd: support for "strings"
  • Markdown: support for frontmatter (e.g. GitHub as blog)
  • Fixed Bugs:
  • Changes view, File Compare:
  • Go to Next Change was broken if caret was only changed in other view
  • Standard window:
  • Graph
  • "Follow only first parents" option fails to properly collapse paths after expanding them
  • repository might remain locked after closing tab while long-running refresh was still in progress
  • Other Noteworthy Changes:
  • GitHub avatars: support for <account-id>+<account-name>@users.noreply.github.com emails

New in SmartGit 23.1 RC 1 (Sep 28, 2023)

  • New Features, Improvements:
  • Preferences:
  • Unified Font and Color settings on one tab
  • Preview also for coloring (language dependent snippets)
  • Syntax:
  • Added more and reworked colors
  • Java:
  • Support for Java 21 String templates
  • Log and Working Tree window:
  • Window | Reset Perspective
  • Fixed Bugs:
  • BitBucket: possible internal error
  • Changes view: did not correctly set editable/non-editable colors
  • Syntax:
  • Markdown: possible internal error
  • Groovy: incorrectly highlighted leading `"` for string
  • JSON: did not highlight `null`
  • PHP: incorrectly highlighted `<?php`
  • Standard window:
  • Graph:
  • Copy ID: possible internal error
  • Select Child: possible internal error
  • MacOS:
  • -nvironment variables configured in ~/.zshrc were not detected (requires low-level property `envVarParser.interactiveShell` set to `true`)
  • Wrong environment variables were logged as detected ones
  • Other Noteworthy Changes:
  • Commit views: allow to commit empyt merge commit with the low-level property `commit.allowToCreateEmpty`
  • Preferences:
  • Setting the low-level property `preferences.font.showFixedWidthOption` to `true` will show a checkbox for filtering the shown fonts to those with fixed widths

New in SmartGit 23.1 Preview 14 (Sep 20, 2023)

  • New Features, Improvements:
  • Log/Working Tree window
  • Discard: reject if selection contains staged+locally modified files
  • Standard window:
  • Pull: improve order of operations (fetch, fast-forward non-checked out branches, merge/rebase)
  • Start Feature: offer to reset main branch, if current main branch is ahead of its remote
  • Syntax:
  • simple Markdown support
  • Fixed Bugs:
  • Changes view: scrolling down might stop for certain changes
  • Standard window:
  • My History: author's pull request should show up for source branch, not for target branch
  • MacOS:
  • environment variable detection did not detect all variables, e.g. not those from ~/.zshrc
  • - macOS 14/Sonoma: "NewApplication" was shown as application name
  • Linux:
  • Gerrit integration: hook should not be detected if not executable

New in SmartGit 23.1 Preview 13 (Sep 14, 2023)

  • New Features, Improvements:
  • Clone: special branches "main" and "development" are suggested in branch to check out
  • Commit views (in all windows):
  • If nothing is staged
  • Multiple files are selected, commit those
  • - commit only those files which are visible - not those from parent or sibling directories (Working tree window: from the selected repository)
  • Warn, if
  • Not all staged files are visible
  • Working Tree window: files in a submodule are staged, but not in the selected repository
  • File completion only suggests committable files, including all (!) staged ones
  • Gerrit integration: support for .gitreview, including option "defaultbranch"
  • Graph:
  • Avatar: support for github-no-reply email addresses
  • Bisect: show "good" and "bad" classification also for merge commits
  • Stash Selection: don't include/warn for staged files
  • Syntax coloring:
  • ANTLR, Java: string or character escape sequences are shown in different color
  • Standard window:
  • Configure Features: branch "development" is detected as main branch, too
  • Stash Selection
  • Stage All/Unstage All: requires low-level properties "standard.actions.stageAll" or "standard.actions.unstageAll" to be set to "true"
  • Windows: added default tool "Open in Powershell"
  • Fixed Bugs:
  • Auto-updates: directory .updates/<major-version>/ fills up with control-xxx files
  • Bitbucket: internal error trying to add a Bitbucket provider without invoking "Generate Token"
  • Changes view: deselecting a file kept the vertical scrollbar as-is
  • Commit view: "Commit" button could be enabled, but non-functional
  • Gerrit integration: may not be applicable in case of multiple remotes
  • Refresh: "no is marked as missing" error
  • Speed-search in tables/trees was at wrong horizontal position if the control was scrolled horizontally
  • Standard window:
  • Commit: completion did not suggest submodule changes
  • Discard did not work on missing submodule
  • Reflog: revealing did not work reliably
  • Windows:
  • Workaround for repaint problems if a menu is opened while loading
  • Https://github.com/eclipse-platform/eclipse.platform.swt/issues/791
  • Working Tree window:
  • Changes view: unselecting "Automatic" re-enabled it on hunk stage
  • After committing all files, the displayed one remained (regression)

New in SmartGit 23.1 Preview 12 (Aug 21, 2023)

  • New Features, Improvements:
  • Changes view: allow to apply lines at start/end of changed blocks with different sizes
  • Standard window:
  • My History: ability to add further "favorite" branches (from All Branches & Tags)
  • All Branches & Tags: double-clicking a tag allows to check it out like double-clicking its commit
  • Syntax coloring:
  • Added Forth, Verilog and (x86) Assembler
  • Fixed Bugs:
  • Commit, Rewrap Lines: deleted all # lines
  • Http(s) connections: possible NPE for strange/buggy proxy setups
  • Preferences:
  • Add GitHub hosting provider: did not check for github.com in Server URL input field when adding, but only for editing
  • Rebase: could show error "The rebasing state has changed unexpectedly"
  • Refresh: symlinks in .git/objects are now followed
  • Log window:
  • Files: Save as invoked in a bare repository should not suggest location inside repository
  • Standard window:
  • Reflog: revealed old instead of new commit
  • Syntax coloring:
  • Batch: incorrect detection of FOR variables, e.g. `set PATH=%~dp0bin;%PATH%`
  • Python: _ was not supported in number literals
  • Other Noteworthy Changes:
  • GitHub: shows a more reasonable error message for HTTP error 502
  • Refresh:
  • Show more detailed error message in case of 'missing node'
  • Support for $XDG_CONFIG_HOME/git/config
  • Standard window:
  • Added low-level properties std.*.allowDirtyWt to disable some safety checks for certain commands
  • Reflog:
  • Hide intermediate commits
  • Don't display gray commits
  • Reliably include all commits up to a certain limit
  • Working Tree, Log window:
  • Commit dialog invoked from focused (split) Working Tree table: don't suggest index changes
  • Preferences:
  • Moved Refresh options to "Commands" card to indicate that they are valid for Standard and Log/Working Tree windows
  • Bundled Git: set gc.autoDetach=false, core.fsache=false

New in SmartGit 23.1 Preview 11 (Jul 20, 2023)

  • New Features, Improvements:
  • Standard window:
  • added Remove action
  • Fixed Bugs:
  • internal error when opening Blame and immediately dragging the repository window
  • memory leak for "Detect remote changes" background command
  • Log window:
  • Edit Message: internal error if working tree node was selected
  • Standard window:
  • Files: if no file is shown, the context menu showed enabled "Reveal in Explorer"
  • Output dialog: right-clicking a link, Copy URL did not work
  • Linux tar.gz bundle: contained mac-specific files
  • Other Noteworthy Changes:
  • updated SSHJ to v0.35.0
  • Add Branch (Log and Working Tree window): only allow checkout if the repository is in "normal" state (not during merging, rebasing, ...)
  • Conflict Solver (external): optionally find merge base for renamed files, if not present in .git/index (LLP conflictSolver.determineBaseBlobIdFromLogIfNotPresentInIndex)
  • external) Diff tool: if multiple diff similar tools are configured for different extensions, they are used if comparing files with different extensions (until now the different extensions had to be specified in one diff tool)
  • Rebase Head to: show target in Output
  • Refresh (Refs): added low-level property "core.refs.followSymlinks"
  • Standard window:
  • Graph, Files: added low-level property "standard.graph.files.copyBlobIdAction" to unlock "Copy Blob ID"
  • removed Toggle Assume Unchanged/Skip Worktree commands from context menu (too much power-user)
  • removed Split-Off Files from Branches menu (only in History/Files context menu)

New in SmartGit 22.1.7 (Jul 17, 2023)

  • Fixed Bugs:
  • 2nd SmartGit instance crashes with FileSystemException
  • Rebase, Step: should not be available in non-step mode
  • Refresh:
  • possible problems with custom "filter.<driver>.process" (long running filter process)
  • may not show modifications for files containing "eol" attribute without "text" attribute
  • Other Noteworthy Changes:
  • Graph layout: reduced memory consumption
  • added low-level properties github.userQuery.* to fine-tune/debug query-sizes

New in SmartGit 23.1 Preview 10 (Jul 7, 2023)

  • New Features, Improvements:
  • Support for on-premise license server (e.g. for license tracking in the company)
  • Commit view (Log and Working Tree window):
  • - if nothing is staged, ask for committing all files, with or without untracked files
  • - added similar option in the preferences
  • Standard window: simple customization of view-dependent toolbars (context menu)
  • Fixed Bugs:
  • Clone, GitHub: repository list could use incorrectly cased URL
  • Evaluation: after end of evaluation, SmartGit could not be started anymore (failed silently)
  • GitHub and others: the virtual pull request commits should always show up, regardless of the Follow Only Primary Parents option's state
  • Log Graph: multi-selection broke after fresh
  • Standard window, +/Repositories tab: Add option is missing if the path was entered with leading ~/
  • Squash: possible internal error
  • MacOS: Open in Terminal showed 2 terminal windows, if Terminal app was started by this command

New in SmartGit 22.1.6 (Jun 22, 2023)

  • Fixed Bugs:
  • Changes view, Split Index/WT files: even if changes.preservePositionWhenSwitchingBetweenWtIndexHead is set to false, selecting the index or working tree of the same file did not select the first diff
  • Commit Message, Rewrap: possible internal error
  • Distributed Reviews: pull requests may not be properly updated to merge base
  • GitHub Enterprise: possible internal errror for "Generate Token" in preferences
  • JNA: still created temp directories (regression since 21.2)
  • Refresh:
  • Refreshing fails when using negative respecs (^)
  • LFS (Windows): possible internal error for case-changed directories
  • SSHJ: possible internal error for unsupported private key format
  • Possible internal error killing a (Git) child process
  • GUI:
  • View tabs (Log, WT window): a too-fast drag-and-drop continued to show the drag-reject cursor
  • Log window:
  • GitHub: possible too large amount of REST calls
  • Working Tree window:
  • If in Setup wizard the Standard window is selected as default, neither the Commit toolbar button nor the Commit view were visible
  • Refresh: possible performance problems for .git/index file without checksum
  • Other Noteworthy Changes:
  • Log window:
  • Graph: Varying Coloring uses now more distinct colors
  • Reactive license.serverPing.url

New in SmartGit 23.1 Preview 9 (Jun 7, 2023)

  • New Features, Improvements:
  • Standard window:
  • GitHub: for forks "my" outgoing pull requests to upstream are shown (not just pull requests to the cloned repository)
  • GitLab, Bitbucket: authentication using OAuth 2.0 Loopback interface redirection
  • Fixed Bugs:
  • Bug file was deleted immediately on startup if settings directory (or its parent) was symlink/junction
  • Bitbucket Server: wrong encoding was used for REST API (e.g. non-ASCII comments were not properly created)
  • Git-LFS: possible repeated SSH prompts for "-oControlMaster"
  • Syntax:
  • Inno Setup: "" inside "..." was incorrectly parsed
  • Yaml: invalid rendering of some comment lines
  • Log window:
  • Graph: "Show Only Selected Branches and Tags" option becomes re-selected after restart
  • Working Tree window:
  • Refresh: possible "cancelled" dialogs when switched between repositories
  • Other Noteworthy Changes:
  • GitHub: added low level property "json.graphQL.ignoreErrorsIfDataIsPresent" to hopefully work around GitHub organization permission issues
  • Main windows titles cleaned up (no path shown any more, no preview expiration date)
  • Syntax colors in dark theme: made Comment a little bit brighter to be better readable on green (= added) background
  • Added system property smartgit.settings.defaults to change the location of the "defaults" directory
  • Log window:
  • Graph: adverse order of Varying Coloring colors

New in SmartGit 23.1 Preview 8 (May 11, 2023)

  • New Features, Improvements:
  • Compare and other similar controls: extended whitespace option to "Trailing, in selection and changed blocks"
  • if selected, whitespace is shown in text selection, too
  • Fixed Bugs:
  • Accessibility: possible internal errors on non-Windows systems
  • JIRA, Resolve: possible internal error
  • GitLab: can't add comment to unchanged lines
  • Graph: double-click should not offer to check out for bare repositories
  • Refresh:
  • deleting nested .git directory did not refresh correctly
  • possible internal error in case of inaccessible directories
  • passing command line parameters to already running instance was broken
  • Distributed Reviews add-on: fix possible problem with negative refspecs
  • Standard window:
  • top-level bare repository could not be opened (but sub-repository could)
  • for bare repositories only basic ref-related options should be enabled
  • Other Noteworthy Changes:
  • Commit: workaround for bug in Git 2.40 preventing to create initial empty commit
  • https://lore.kernel.org/git/bt4342bdip3nzlikjsv6wozszmcbsc2av6cyo3z2lra4jhx3ii@ut2sl5h4f5xn/T/#u
  • Hobby license: support for GitHub SSH URLs
  • optionally no unpacking of SWT/JNA libraries needed any more
  • Graph:
  • in Rebasing mode
  • sort "in-progress" commit immediately before the HEAD commit
  • orig' branch should remain top-most
  • HEAD triangle (for detached commit) is now also black
  • bare repository: allow dragging non-head refs
  • Repositories view: when dragging files from other application, bring SmartGit window to front
  • Standard window:
  • Graph: in Rebasing mode, HEAD column should be sorted first (as in Log window)
  • Resolve: works now on multiple files (as in Working Tree and Log window)
  • Files, context menu: for conflicted files, Resolve is shown above Stage
  • Windows:
  • smartgit.exe does not create temporary files any more

New in SmartGit 23.1 Preview 7 (Apr 27, 2023)

  • New Features, Improvements:
  • Standard window: first accessibility support (for getting feedback)
  • Fixed Bugs:
  • Commands to create tags without message failed if tag.gpgSign was set
  • Graph:
  • Avatar display in "Only if Changed" mode did not check for change in email address (but just user name)
  • Squash: dialog might show visually identical authorships
  • Log window:
  • Internal error when using low-level property "log.workingTreeState"
  • Commit view: if name is an email, it was not shown
  • Standard window:
  • Output dialog: performance problem for many lines
  • Repositories tree: could not rename groups
  • GUI:
  • Speed-search popup remained in error state after non-match
  • Other Noteworthy Changes:
  • Graph and other controls show an empty message if nothing is selected
  • GitHub: added low-level property log.github.createPullRequestAllowDifferentUpstreamName
  • GitLab, Bitbucket, Azure: Create Pull Request simply routes to browser
  • Submodule/Subtree wizard: made clear that (previous) "Local Path" is a relative path
  • Command line option to copy (convert) a repository to single-user (experimental)
  • Standard window:
  • Same refresh-related checks as Log and Working Tree windows, e.g. for loose objects
  • Shows URL-less remotes, too (as "git remote" does):
  • Smartgitc.exe --convert-repository-to-single-user=c:projectsrepo --convert-target=c:projectssingle-user-repo

New in SmartGit 23.1 Preview 6 (Apr 14, 2023)

  • New Features, Improvements:
  • Commit:
  • for GitHub repositories let the user confirm the used email address
  • Rebase Interactive and other history commands: support for initial commit handling
  • Log window:
  • Commit Details: Closest Tags display now all tags which are reachable without any other intermediate tag
  • Standard window:
  • Integrate: asks whether to use --fork-point if it might be useful
  • Pull toolbar button: popup menu offers now Pull All for multi-remote repositories
  • left lists: keyboard shortcuts for commands
  • Fixed Bugs:
  • Graph:
  • branches might jump downwards when extending the graph
  • Log window:
  • revealing a branch might have failed (auto-loading might have not get triggered)
  • Commit Details: tag-groupong tags should show up for commits with exact tags, too
  • Standard window:
  • Integrate: for diverged main branch, with deactivated progress dialog, nothing happened
  • changing keyboard shortcuts did not apply them until the window was closed and reopened
  • possible internal error switching from Local Files to History
  • All Branches + Tags: HEAD occurred with tag symbol
  • Graph:
  • clicking branch arrow did not load more commits
  • switching between All Branches + Tags and Stashes caused tag display flickering
  • Working Tree window:
  • Repositories: right-clicking a bare repository did not show any external tools
  • File Compare: syntax coloring was not correctly selected if no pattern, but a full file name was configured
  • WSLg: opening the browser did not work
  • Other Noteworthy Changes:
  • Add or Init repository: don't add initial commit, because Commit will do that already
  • Graph: layouting improvements with respect to the sorting of tip commits
  • Preferences, Filter input field: ESC should clear it
  • Repositories, Remove: tries to close the repository before removing
  • Log, Working Tree windows:
  • Push: should be enabled for multiple remotes not named "origin"
  • Output, Clear: will clear now all items, except those which finished < 0.5s ago

New in SmartGit 22.1.5 (Mar 31, 2023)

  • Fixed Bugs:
  • Kill hanging process: possible internal error
  • Refresh:
  • Possible internal error in case of corrupt .git/index file
  • Possible internal error related to bad branch.<name>.merge entry in .git/config
  • Problem reading packed-refs
  • Standard window: possible internal error when filtering
  • Other Noteworthy Changes:
  • Log: remove notification "would you like the Log as default window?"
  • Preferences: after changing the Startup window option, show restart notification
  • Setup wizard: let the user confirm the Standard window

New in SmartGit 23.1 Preview 5 (Mar 30, 2023)

  • New Features, Improvements:
  • Commit:
  • for GitHub repositories let the user confirm the used email address
  • Rebase Interactive and other history commands: support for initial commit handling
  • Log window:
  • Commit Details: Closest Tags display now all tags which are reachable without any other intermediate tag
  • Standard window:
  • Integrate: asks whether to use --fork-point if it might be useful
  • Pull toolbar button: popup menu offers now Pull All for multi-remote repositories
  • left lists: keyboard shortcuts for commands
  • Fixed Bugs:
  • Graph:
  • branches might jump downwards when extending the graph
  • Log window:
  • revealing a branch might have failed (auto-loading might have not get triggered)
  • Commit Details: tag-groupong tags should show up for commits with exact tags, too
  • Standard window:
  • Integrate: for diverged main branch, with deactivated progress dialog, nothing happened
  • changing keyboard shortcuts did not apply them until the window was closed and reopened
  • possible internal error switching from Local Files to History
  • All Branches + Tags: HEAD occurred with tag symbol
  • Graph:
  • clicking branch arrow did not load more commits
  • switching between All Branches + Tags and Stashes caused tag display flickering
  • Working Tree window:
  • Repositories: right-clicking a bare repository did not show any external tools
  • File Compare: syntax coloring was not correctly selected if no pattern, but a full file name was configured
  • WSLg: opening the browser did not work
  • Other Noteworthy Changes:
  • Add or Init repository: don't add initial commit, because Commit will do that already
  • Graph: layouting improvements with respect to the sorting of tip commits
  • Preferences, Filter input field: ESC should clear it
  • Repositories, Remove: tries to close the repository before removing
  • Log, Working Tree windows:
  • Push: should be enabled for multiple remotes not named "origin"
  • Output, Clear: will clear now all items, except those which finished < 0.5s ago

New in SmartGit 23.1 Preview 4 (Mar 8, 2023)

  • Changes view: submodule comparison may continue to show error banner from previously selected file
  • Git-Flow: Configure was incorrectly enabled
  • Tag Grouping: was not applied if ~/.gitconfig contained [taggrouping] section without any key
  • Theming, default theme: table did not reset yellowish background after filtering
  • Log:
  • Commits view:
  • Did not update after re-configuring Tag-Grouping
  • With tag-grouping configured, branch calculations (like "on", "closest tags") were not performed for standalone tags
  • Possible deadlock when opening submodule
  • Standard window:
  • Commit, file name completion: possible internal error
  • Repositories tab: fixed layout for small screen sizes
  • WSLg:
  • On a fresh system (without ~/.config/) the settings were written to wrong location
  • Installation update failed
  • Restarting SmartGit after settings change did not work
  • Windows did not show minimize/maximize buttons

New in SmartGit 23.1 Preview 3 (Feb 23, 2023)

  • New Features, Improvements:
  • Commit: preferences option for ignore comment lines, use message literally, or ask the user:
  • Rename Commit, Split-Off, Squash dialogs always use the message as provided
  • Changes view, Submodule change: ability to open submodule log in compare mode
  • Split-Off Files: optionally create the new commit before or after the original commit
  • Log window:
  • Create Pull Request: optionally allow to open the web browser to create the pull request at GitHub
  • Standard window:
  • Finish Feature:
  • Optionally allow to open the web browser to create the pull request at GitHub
  • Detect protected branches and in that case default to Create Pull Request
  • Graph: loads more commits when scrolling to the bottom

New in SmartGit 22.1.4 (Feb 22, 2023)

  • Fixed Bugs:
  • Background scan: fixed memory leak if Detect Local Changes is disabled
  • Changes view: Resolve may fail with "Input length = ..." error depending on the used encodings
  • Fetch More: internal error when trying to fetch non-branch, like Gerrit refs/changes/01/000002/3
  • Standard window:
  • Files: possible incorrect original path shown for renamed file
  • Filter: various regex-selectors, e.g. .* were non-functional
  • GitHub: possible internal error during refresh
  • Rebase may silently do nothing
  • Linux bundle: old .svg file was bundled
  • Other Noteworthy Changes:
  • Tools: the obsolete ff-merge.sh tool is removed automatically, even if upgraded from older SmartGit versions)

New in SmartGit 23.1 Preview 2 (Jan 25, 2023)

  • Fixed Bugs:
  • Completion: selection is lost if the popup is open and the selection is modified
  • Refresh: possible problems with Git filter-invocations (low-level property "core.git.invokeFilterDirectly")
  • Windows might be possible to come to front if focus is changed while in background (regression)
  • Standard window:
  • Some menu items are enabled if no repository was opened
  • My History: even branches where shown packed
  • Other Noteworthy Changes:
  • Standard window:
  • Apply Stash: should only switch to WT if there are local changes
  • Mini-Log: use log.useCommitMessage.prefix, except of when amending
  • Repositories tab:
  • Allow to copy path of selected repository
  • Filter input field:
  • Don't suggest Initialize for roots or parent dirs of known repositories
  • Show Add suggestion even if repositories with this prefix are known, except if the found root is already known

New in SmartGit 23.1 Preview 1 (Jan 20, 2023)

  • New Features, Improvements:
  • Azure DevOps: support OAuth authentication for multiple cloud accounts
  • GitHub integration: switch OAuth to loopback-callback for improved convenience and security
  • Syntax coloring:
  • support for Lua/Nelua
  • support for Odin
  • Standard window:
  • allow to reorder tabs with drag and drop
  • Features: support for multiple "main branches", e.g. develop, release-v1, release-v1.1
  • My History: added option in Hamburger menu to show tags pointing to the displayed commits
  • My History, All Branches + Tags: selecting 2 refs selects them in the graph, too, for easier comparison
  • Fixed Bugs:
  • Changes view:
  • did not update properly for Index-only changes
  • might show outdated diff after switching repositories
  • Changes view, Compare, Conflict Solver, Index Editor:
  • possible problems with increased line heights caused by non-US-ASCII characters resulting in selection problems, Goto Next/Prev Change selecting wrong lines
  • Find did not find text inside selection
  • Syntax:
  • Crystal: numbers can have suffixes like _i8
  • C#: hex literal may start with 0X (uppercase x)
  • Conflict Solver: problem with conflict at end of file with/without line separate in last line
  • Spell Checker: old (removed) language is still shown in context menu for typo
  • SSH: possible problems with ! in GIT_SSH path on Windows
  • GUI:
  • File completion: selection is lost if popup is open and the selection is modified (with Shift+Left)
  • Graph: tooltip for truncated messsage did not hide if mouse was moved
  • Output dialog: could get too large (high)
  • Table controls: multi-selection could break for refreshs
  • Standard window:
  • Graph: main branch was not always layouted left-most
  • Refresh: possible "missing object" error when opening repository
  • Start Feature: must not reset diverged local main branch onto remote branch
  • Repositories tab: possible is-disposed error when renaming a repository
  • Other Noteworthy Changes:
  • Clean Working Tree: reworked options to make more obvious what is done
  • Delete Branch: cleans up Git-Flow branch information in Git config files
  • Discard submodule: can operate on multiple selected submodules now
  • History-related operations: are enabled for inapplicable commits, but show an information explaining why they are not available
  • Refresh: files inaccessible due to file system permissions are denoted by a "inaccessible" state
  • Squash: authorship defaults to oldest author with most recent date (low-level property "squash.authorshipDefault")
  • Log window:
  • Branches, context menu: "Toggle" is only available where reasonable
  • Changes view: a different font is used (on Windows) so the comments are better readable (font can be configured with low-level property "changesView.comment.fontName")
  • Discard should not abort commands (it is too easy to confirm, e.g. while bisecting) by default (low-level property "discard.canAbort")
  • Graph: distinct popup menus for Pull Request and Stashes
  • while Bisecting: all commands that make no sense are disabled
  • Standard window:
  • Checkout commit: will create a temporary branch
  • Commit: added low-level property "standard.selectIndexOnFocusCommitMessage" to always select Index when focusing commit message input field
  • Directories view: can delete untracked directories
  • Files views: can group by state
  • Repositories tab:
  • ability to Mark as Favorite (putting repositories at begin of group)
  • filter input field can filter by full path now
  • if repository at path is not known, it can be added/opened
  • if directory at path is no repository, it can be initialized
  • Features:
  • reads .gitflow file for the defaults
  • commands work for repositories without remote, too
  • Start Feature:
  • checks for diverged main branch earlier
  • update submodules
  • is also available in My History toolbar
  • Integrate Feature: improved wording and display of progress
  • Undo Last Commit: requires only clean Index, but allows dirty working tree
  • added Clean Working Tree (requires "standard.actions.advanced.clean" to be set to "true")
  • updated bundled Java to 17.0.5
  • updated SWT to v4958r2

New in SmartGit 22.1.3 (Jan 20, 2023)

  • Fixed Bugs:
  • Standard window:
  • Start Feature: could reset diverged local branch (not ahead or behind) onto remote branch (possible loss of commit)
  • Graph: internal error when selecting virtual and one other commit
  • Log window:
  • Changes: clicking submodule commit did not reveal commit reliably
  • Hosting providers:
  • Azure: for multiple configured hosting providers (accounts), refreshing only worked randomly
  • GitHub: possible "Object author not found as parent of PullRequest" for pull requests of non-existing users
  • Refresh:
  • at line end of config file was erroneously treated as line continuaton could break in case of inaccessible directory or file
  • Setup wizard: possible internal error on Finish (related to proxy configuration)
  • Other Noteworthy Changes
  • Azure DevOps: added low-level property "azure.accountMatchHonorOrganization"
  • Rebase: by default rejects Rebase Interactive when trying to rebase onto a commit of the HEAD's history (low-level property "rebase.invokeInteractiveForBranchHistory")
  • Log window:
  • Changes: font to display comments might be too small to read: added low-level property "changesView.comment.fontSize" to configure the size

New in SmartGit 22.1.2 (Dec 23, 2022)

  • Annotate: possible internal error
  • Background scan: fixed memory leak
  • Bitbucket: failed for pull requests with invalid refs (silently ignores them now)
  • GitHub integration: possible error "Object 'requestReviewer' not found as parent of 'nodes'"
  • Refresh:
  • - possible error "is a directory" when opening a repository with symlinks in .git/refs
  • - possible error "Bad entry" for rn continuation in Git config file
  • Spell checker: possible internal error when accepting fix while the message was cleared automatically after a successful commit
  • Syntax coloring, PHP: incorrect end of string detection
  • UI:
  • - Changes View/Compare: non-US-ASCII-related problems; restored SmartGit 21.2 behavior
  • - Investigate toolbar icon had wrong background
  • - Standard window, Commit: line length guide ignored left margin
  • Various operations: possible error "Inappropriate ioctl for device" when writing .git/config
  • Linux:
  • - fails to start if 'which' command is not available
  • - visible empty shell when clicking Shutdown

New in SmartGit 22.1.1 (Nov 24, 2022)

  • Fetch: possible internal error
  • Git config file: possible corruption when writing, especially for lines after a comment line
  • Log:
  • Subdirectory Log: internal error double-clicking a commit
  • Graph: possible internal error when filtering with set low-level property "log.graph.topoFilter.alwaysIncludeContainingMerges"
  • Push To: did not configure tracking even if options were set to do so
  • Preferences: certain .gitconfig options may become confused if not stored with canonical case in .gitconfig
  • Standard window:
  • Internal error cloning a repository into a directory which was already open and had been deleted outside SmartGit
  • Local Files, Push toolbar buttons: count badge might be outside the button depending on the screen zoom level
  • I18n:
  • Investigate: i18n problems
  • MacOS: window-less menu bar was not translated

New in SmartGit 22.1.0 (Nov 11, 2022)

  • - File Log: hitting Del in the Branches view caused internal error
  • - JIRA: many recurring dialogs after cancelling SSL client certificate

New in SmartGit 22.1 RC 4 (Nov 8, 2022)

  • Fixed Bugs:
  • command line parameter --write-default-theme-file produces incomplete own-light.theme file
  • evaluation was not possible on WSLg
  • Refresh:
  • performance regression when processing huge modified file
  • possible internal error in case of concurrent file system modifications
  • Standard window:
  • Apply Stash: possible internal error if there was no stash available
  • Commit: possible error "bad revision 'HEAD'" on first commit
  • Refresh: graph might show outdated state
  • Other Noteworthy Changes
  • i18n: updated translations (Chinese and Japanese)
  • renamed low-level properties starting with "changesView." to start with "changes."

New in SmartGit 22.1 RC 3 (Oct 27, 2022)

  • Fixed Bugs:
  • Graph:
  • In rebasing mode after conflict, when squashing two commits "in-progress" marker is missing
  • Shutdown: fix for (invisible, but reported) exception
  • Standard window:
  • Refresh:
  • Graph could show outdated state
  • Possible internal error when working in old branch
  • Other Noteworthy Changes:
  • Changes view: added low-level-property changesView.scrollHorizontally to tweak horizontal scrolling
  • Syntax coloring:
  • Support for Zig

New in SmartGit 22.1 RC 2 (Oct 21, 2022)

  • Fixed Bugs:
  • Cherry-Pick/Revert File: possible internal error when invoking on a commit which contains file and directory with the same name
  • Refresh:
  • Rename detection must not obstruct conflict
  • Git filter configuration: escaped quotes were not handled properly
  • Standard window:
  • Pull: possible false-positive "Pulled nothing new" despite of branches being fetched
  • Start Feature: was disabled if main ref was missing
  • Other Noteworthy Changes:
  • Refresh: added low-level property core.git.invokeFilterInShell which may resolve problems with more complex Git filter definitions

New in SmartGit 22.1 RC 1 (Oct 15, 2022)

  • Fixed Bugs:
  • Drag and drop of views: possible internal error
  • Create Pull Request (GitHub/others): didn't show error in case of failure
  • Refresh: error "Node ... is marked as missing but commit exists in repository" after filtering for a single commit
  • Syntax:
  • YML: incorrect detection of numbers after text
  • Standard window:
  • My History:
  • Repaint problem with HEAD commit (remained too long in bold state)
  • Possible internal error related to GitHub pull request
  • Installation upgrade (especially on macOS): ~currentl-log.<number>.tmp file might remain in updater directory preventing upgrade
  • Other Noteworthy Changes:
  • Log Graph:
  • Modify Commit: denote current commit as "editing" instead of "done"
  • Select from Log/JIRA: use insert/replace-selection instead of replace-all where useful
  • Linux: force X11, because SWT has too many problems with Wayland (for those with more problems in forced X11: they can comment the "export GDK_BACKEND=x11" line in smartgit.sh)

New in SmartGit 22.1 Preview 17 (Oct 10, 2022)

  • Fixed Bugs:
  • Drag and drop: possible internal error
  • Gravatar image: pending gravatar image showed up as white for dark theme producing visual noise
  • Log Graph:
  • initiating a range-rebase using drag and drop did not work for commit having multiple children
  • Refresh: possible internal error in case of concurrent file system changes
  • Standard window:
  • if local main branch is missing, remote main branch did not show up if multiple remotes were configured
  • My History: 'tracked branch has different name' check reported false-positive
  • Linux, deb-bundle: bundled JRE had incorrect permissions preventing the execution of external commands
  • Other Noteworthy Changes:
  • Log Graph:
  • use more colors for refs
  • Working Tree/Log window:
  • added low-level properties docking.dnd.minTime and docking.dnd.maxTime to reject unintentional drag and drop of views
  • added low-level property docking.dnd.enable to disable drag and drop of views
  • Standard window:
  • All Branches + Tags: use same ref colors as in My History view
  • by default show current branch not just bold (might be harder to notice in dark theme), but also with leading triangle
  • Checkout: allow switching branch with dirty working copy
  • command error popup shows now error details instead of just "Command failed!"

New in SmartGit 22.1 Preview 16 (Sep 30, 2022)

  • NEW FEATURES, IMPROVEMENTS:
  • FIXED BUGS:
  • Branches view:
  • Add Branch/Tag was missing in Local Branches/Tags category
  • Git-Flow:
  • Release and Support category context menus miss "Start" operation
  • Changes view: clicking submodule commit did not open submodule anymore
  • Cherry-Pick: when cherry-picking multiple commit and using Commit instead of Continue after a conflict, "git cherry-pick --continue" needs to be invoked
  • Clone, GitHub: "Object 'id' not found" error when trying to list repositories
  • Graph:
  • for remote refs, jigsaw piece didn't always show up for tracked remote branch
  • Git-Flow toolbar button misses various operations
  • GitLab: strange, unparsable message in case of duplicate merge request
  • Refresh:
  • git/config files could not be parsed if lines ended with to be continued on next line
  • git/config files could not be parsed correctly if section or key names were not entirely lower case
  • possible internal error in case of 0-size or incomplete files in .git dir
  • possible internal error related to missing-untracked rename detection
  • Subtrees: ignore subtrees which form invalid hierarchies (which can occur due to buggy commit messages)
  • Syntax:
  • InnoSetup: wrong highlight for '-quoted commands
  • Log:
  • Commit view: Copy Full ID was missing
  • Files: sorting by Name was broken
  • Refresh: subtrees may still show up for existing repositories after having configured LLP "nodecache.subtrees.enabled=false"
  • Standard window:
  • possible internal error filtering graph
  • Files view (Local and Graph): renamed file's name might not show up properly
  • Jenkins: query did not timeout
  • Working Tree window:
  • Cherry-Pick: did not remember selected button
  • Linux:
  • installation update: temp dir might remain (and can't be trashed on restart)
  • Windows:
  • command line parameters: a trailing in a quotes string was treated as escaped "
  • OTHER NOTEWORTHY CHANGES:
  • Add Branch: by default the "Add Branch & Checkout" button is selected, because it is needed more often, unless the Standard window is used and a checkout would be rejected because of local changes
  • Bisect: in Finish dialog allow to copy ID
  • Graph:
  • Drag and drop of (remote=local) refs should only show (local) while dragging
  • Files:
  • Save As: swapped buttons to be in visual order
  • Merge: reject to merge commits from own history
  • Rebase: immediately start interactive rebase when trying to rebase onto own history
  • Stage: warns if a (text) file contains conflict markers
  • Standard window:
  • GitHub integration: operations like Finish should not fail if connection to GitHub is not possible
  • Mini-Log vs. Commit Message: better use available space
  • Push: if no remote is present, offer to Add Remote
  • Remote | Add
  • Local Files:
  • double click on a file in the Local Files display either can stage/unstage the file or open the compare; this can be configured in the preferences
  • context menu:
  • for conflicting files, the Conflict Solver is shown as default command
  • no default (bold) menu item for multi-selection
  • My History:
  • CI information also honors pending/running workflows
  • GUI:
  • use new icon for file renamed in index, modified in working tree
  • line length guide: background color for too long line hard to see on dark theme
  • don't show preview expiration date in title as it confuses users

New in SmartGit 22.1 Preview 15 (Sep 5, 2022)

  • New Features, Improvements:
  • Japanese translation:
  • Fixed Bugs:
  • GitHub: Clone dialog did not show up all (organization) repositories
  • Log:
  • Commit details: fixed open links for unpushed commits or commits pushed to only a specific repository
  • Save As: saved file with (temp-file) permission 400; now trying to retain the permission of an overwritten file or using 644
  • GitHub: creating pull request to upstream fails
  • Refresh:
  • internal error related to remove.<id>.fetch/push definitions which do not refer to remote refs
  • possible internal error related to squashed subtrees
  • LFS: rename of LFS file is not detected (untracked/missing shows up instead)
  • Standard window:
  • Create Pull Request: allowed to send a pull request to same branch which was rejected then by the server
  • Pulls: popup might show too low number of pulled branches
  • Other Noteworthy Changes:
  • Commit message fields, JIRA issue selection: use replace-all for all dialogs (not some replace-all, others replace-selection)
  • default font size can be now configured using ui.fonts.defaultSize (has no influence on menubar, popup menu, radio button/checkbox symbols)
  • Repository settings (or for defaults in preferences)
  • Pull: allow to configure Merge vs. Rebase behavior
  • Fetch All: to fetch from all remotes
  • Refresh:
  • more memory-efficient untracked-missing rename detection
  • Log:
  • Graph:
  • Merge commits (even those in stashes) are shown in black now (changed default of log.graph.showMergeCommitsGray to false) because they are often more important than the merged commits
  • Log and Working Tree windows:
  • Branches view: added Fetch to the remote's context menu
  • Standard window:
  • Commit message field: optional index selection became a little bit smarter (removed files.selectIndexOnFocusCommitMessage)
  • Files: improved the display of long file paths, especially if renamed
  • Local Files toolbar button shows the total of Working Tree and Index changes
  • Submodule: closing a submodule repository tries to select the parent repository
  • GUI:
  • toolbar: should be more tolerant now when dragging slightly as part of the click

New in SmartGit 21.2.4 (Sep 2, 2022)

  • Fixed Bugs:
  • Azure DevOps: integration was not applicable for ssh://[email protected]:22/project/_git/application URLs
  • Changes view:
  • possible internal error selecting certain images (depending on color model)
  • possible internal error when applying/reverting selection containing removal of empty line
  • Git-Flow (external): finish feature/hotfix/release branches containing '/' did not work
  • Log:
  • Graph: possible internal error for partial clones when filtering for file name or content
  • Refresh:
  • BitBucket Server: possible internal error if pull request has been created from tag
  • squashed subtrees were not detected
  • rebooting while running might lose newly entered hosting provider credentials
  • Refresh (working tree): possible internal error if .git/index has null-checksum
  • Other Noteworthy Changes
  • added low level property refresh.checkGitAdminOutsideOfModel

New in SmartGit 22.1 Preview 14 (Aug 22, 2022)

  • New Features, Improvements:
  • Cherry-Pick: support for Skip
  • LFS:
  • for untracked files the (will-be-tracked-by-LFS) state is also indicated
  • Track: is limited to untracked files
  • Lock/Unlock: is limited to unlocked/locked files
  • Files tables: a new column "LFS" is available for showing the LFS state
  • Rebase/Revert: conflicts are considered as warnings, not errors
  • Standard window:
  • Graph: added hamburger menu for columns and author display
  • LFS commands
  • Local Files:
  • unchanged LFS-locked files will be always be shown (to not forget about unlocking them)
  • at the right side, LFS-state is shown
  • Fixed Bugs:
  • Checkout: EOL-correction may not work for UTF-8 with BOM encoded .gitattributes
  • Clone: possible internal error trying to clone from SVN repository
  • Commit message input field:
  • after clearing the default message (e.g. after a cherry-pick), the next refresh brought it back
  • possible incorrect position of line-end guide lines depending on the used font, e.g. for Iosevka SS04
  • default Tools: a new default Edit tool is created if the previous one had been deleted or modified
  • GitHub: error "Object 'defaultBranchRef' not found as parent of 'repository'"
  • Refresh: local LFS lock information was used even if querying for locks was disabled (so showing easily outdated information)
  • Log:
  • Graph: searching for refs was broken (regression since 21.2)
  • Standard window:
  • File log failed to open for renamed file
  • Graph: deselecting commit did not clear Changes view
  • Pull: LFS locks were not queried even if low-level property status.lfs.locks was set
  • Refresh:
  • for GitHub repositories, the Graph was not updated reliably after performing an operation, e.g. Pull
  • internal error opening Git-SVN repository
  • Working Tree window:
  • Journal: false-positive warning about pushed commits for detached commits
  • Other Noteworthy Changes:
  • added low-level property log.graph.commitMessageTruncatedEllipsis
  • Standard window:
  • Graph:
  • Copy commands should not append trailing newline
  • selecting a pull request should show commit details for this artificial commit (as the Log window does)

New in SmartGit 22.1 Preview 13 (Jul 28, 2022)

  • New Features, Improvements:
  • Standard window:
  • Jenkins integration
  • Teamcity integration:
  • query for local branch commit to show more approriate results
  • Fixed Bugs:
  • Standard window:
  • Graph showed outdates state
  • Local file changes: may not reliably refresh root state banner
  • Other Noteworthy Changes:
  • Standard window:
  • tab: filter input field to quickly find repository by name or path parts

New in SmartGit 22.1 Preview 12 (Jul 22, 2022)

  • New Features, Improvements:
  • Standard window:
  • Ability to create pull request even without finishing a feature
  • My History: Continues Integration (Teamcity)
  • Rename (local) Branch: performs a couple of safety checks and renames the remote branch, too
  • Fixed Bugs:
  • Prune Worktrees: did not work any more with latest Git version
  • Refresh: possible memory overflow due to file monitor cache growing too large
  • Working Tree and Log window:
  • Output: right-click did not show context menu
  • Standard window:
  • Features: possible internal error after configuring main branch
  • My History: clicking 2 times a local branch with far behind tracked branch did not select the tracked branch
  • Graph: may not reliably refresh root state banner
  • Other Noteworthy Changes:
  • Evaluation requires machine-specific activation now
  • JIRA: support token-based authentication
  • Show notification if a deprecated low-level property is used
  • Files view (split presentation): if a file rename is staged and then modified, the working tree displays the modified state
  • Branches, Stash: Copy Message: copy the message from commit which might include, e.g., line separators
  • Hosting providers: improved error reporting
  • Repositories view: for open repositories show remotes in tooltip
  • Too large tooltips can be expanded/collapsed using F1
  • License reworked:
  • Non-commercial use:
  • Removed hobby usage option
  • Requires registration
  • Standard window:
  • All Branches + Tags: ability to push tag
  • Pull: automatically delete obsolete tracking branches (if the commit is merged and no merged commit has a different author or committer than me)
  • Rebase: warns if pushing would require a forced push

New in SmartGit 22.1 Preview 11 (Jul 3, 2022)

  • New Features, Improvements:
  • Bisect: the user is notified about the first found bad commit
  • Clone, GitHub: shows the same "top repositories" as GitHub website
  • Log graph, Rebase-state:
  • Reworked logic for pendding ("todo") and "done" commits
  • The "current" commit is denoted
  • Standard window:
  • Bisect:
  • The Graph's context menu contains a "Try Commit" menu item
  • Garbage Collector
  • Fixed Bugs:
  • Start Feature: hang after adding feature for which the name contained a quote character
  • Investigate:
  • JIRA-links in commit message had no context menu to copy URL
  • Some controls were focusable which shouldn't be
  • Refresh: repository might be false-positively considered as bare
  • UI:
  • Pressing ESC inside a (multiline) Text control did not close the dialog
  • Pressing ESC to close a completion popup closed the dialog, too
  • Log window:
  • Refresh:
  • Possible internal error related to missing local objects
  • Confusion of replaced vs. replacing ID when using git-replace
  • Standard window:
  • GitHub:
  • No pull requests showed up in case of the source repository of one pull request being deleted
  • Possibly obsolete model might have been set during pull request refresh resulting in "jumps" of the graph to some unexpected/old state
  • External tools: cancelling a tool's Save dialog showed empty result window
  • Stashes: Apply was enabled even for multi-selection
  • UI: minor gliches at the borders of some left panes
  • Working tree window:
  • Possible internal error trying to scan repository from detached working tree
  • Journal: shortcuts displayed in context menu, e.g. Ctrl+Shift+K, did not work
  • Other Noteworthy Changes:
  • Add/Open Repository: when selecting a .git-directory, the working tree should be used instead
  • Bisect: dropped separate "Reset" command by using "Abort"
  • Changes view, GitHub: denote whether comment is pending
  • Conflict Solver: the default SmartGit waits for the external process to finish before proceeding (low-level property externalConflictSolver.waitForProcess)
  • GitHub: switched to GraphQL API (improving performance and error message)
  • Syntax coloring:
  • C(++): support for binary literals, e.g. 0b0100
  • Pascal: added try/finally keywords
  • File Compare, Conflict Solver, Text editor: Undo/Redo first selects the change to undo/redo
  • Log window:
  • Branches view: hamburger menu options work now only for the current and new windows, but not for other already open ones (to be consistent with other options)
  • Standard window:
  • Graph: honors low level property log.graph.preserveParentOrder now
  • All Branches + Tags: hamburger menu to configure sort order and whether tags are shown by default
  • Stashes:
  • Changing Graph selection also updates selection in the left stashes list (so both are synchronized)
  • Graph: allow to apply/drop stashes by right-clicking one of their commits
  • Some path tables: improved sorting ("subdir" before "subdir/subsubdir" before "subdir-2")

New in SmartGit 22.1 Preview 10 (Jun 1, 2022)

  • Fixed Bugs:
  • Changes view, GitHub: comment on last line was incorrectly mapped to first line
  • Cherry-pick: "Append source SHA to commit message" was not honored when cherry-picking without committing
  • Log: possible internal error when searching for a commit
  • Push: internal error pushing one new local and some other tracking branch and tracking should be configured
  • File Compare selection: the file's relative path was used instead of the file name for determining the matching configured file compare
  • Possible internal error related to displaying renamed/moved file
  • Possible internal error closing a repository quickly after opening it
  • Refresh:
  • Symrefs pointing to other symrefs could be considered as invalid though they were fine
  • Symrefs should be resolved even if target is outside of refs/
  • - possible error "Unknown Chunk ID" when using Git 2.36
  • Standard window:
  • Features: if "gitflow.prefix.feature=/" is configured, every branch should be considered as feature (as if the prefix was not configured at all)
  • Finish: possible error "Connection to GitHub failed" if there are existing pull requests which have been created by a bot
  • Repositories tab:
  • Could not delete single repository group
  • Internal error invoking Move To for several selected repositories
  • Other Noteworthy Changes:
  • External tools: previous default tool "Format Patch" has been removed;
  • GitHub: improved handling of permission-related OAuth problems
  • Updated JRE to 17.0.3
  • Updated SWT to v4952r11
  • Standard window:
  • Copy NameL works on pull requests, too
  • Open Ref/Commit in browser (GitHub web frontend)
  • Undo Last Commit: requires clean working tree and index
  • Windows:
  • Dark theme: search input fields now use light instead of dark icons

New in SmartGit 21.2.3 (May 30, 2022)

  • Fixed Bugs:
  • Changes view
  • Internal error related "Split leading/trailing lines" option
  • Copy without selection: copies 1 char too much resulting in crash for last line
  • for Unified view, Goto Next Change may remain at existing change
  • error "failed to read file" for missing files if "core.autocrlf=input" is configured
  • Files (Log and WT): State and Working Tree State columns should denote rename sources as "missing", not "unchanged"
  • GitLab: error "The authorization server does not support this response type" when trying to generate a new token
  • Log: possible internal error when filter for modified content
  • Pull: Git config "pull.rebase=merges" should be honored
  • Pull/others: submodule.<name>.update=none should be honored
  • Refresh (WT): "filter" may not be applied if listed after "text" or "eol" in .gitattributes
  • Other Noteworthy Changes:
  • GitHub: support OAuth repository authentication for gist.github.com, too
  • Added low-level properties
  • status.gitCompatibleMode
  • submoduleUpdate.failAllIfSingleUpdateFails

New in SmartGit 22.1 Preview 9 (May 6, 2022)

  • New Features, Improvements:
  • Standard window:
  • Edit Author
  • External tools
  • Reflog (was experimental before)
  • Fixed Bugs:
  • Changes view:
  • For Unified view and a removed block, Goto Next Change jumped to the beginning of the block
  • Obsolete image/submodule information may remain after switching to another file which gives "file size exceeds" error
  • Log and Working Tree window:
  • Toggle Assume Unchanged/Skip Worktree: option was missing in context menu for missing files
  • Log window:
  • Graph filtering for Modified Content may miss matching files with invalid UTF-8 file names
  • Delete Ref: for local, non-tracking refs warning may not mention "unpushed commits"
  • Refresh:
  • Internal error opening file located on repository root
  • Windows: possible "access denied" for System Volume Information
  • Startup: internal error if ~/.gitconfig started with UTF-8 BOM
  • Standard window:
  • All Branches + Tags: internal error when clicking Copy Name/Path/Relative Path in Files view
  • Finish Feature: for merge commit author from last feature commit was used instead of configured author
  • Linux: shutdown of file monitoring may block application shutdown for a long time
  • MacOS:
  • Branches view: ahead-behind information scrolls horizontally instead of staying at the right side
  • Other Noteworthy Changes:
  • Changes-Compare: experimental low-level property compare.applyCleanSmudgeFilterForWorkingTreeFile to apply the clean-filter, followed by the smudge-filter for the working tree file
  • Fast-forward external tool has been replaced with built-in command
  • Preferences, Executable: show Git version
  • Submodule Update: don't stop in case of update errors in a single submodule
  • Standard window:
  • Commit: if nothing is staged,
  • Multiple changed files are selected, commit them
  • A single file is selected and multiple committable files exist, ask whether to commit this file only or all
  • Hide feature-related toolbar buttons if Git-Flow is explicitly disabled in .git/config
  • GitHub integration: now also supports GitHub Enterprise

New in SmartGit 22.1 Preview 8 (Apr 13, 2022)

  • New Features, Improvements:
  • Standard window:
  • GitHub: pull request display
  • Syntax coloring:
  • added support for Crystal
  • Fixed Bugs:
  • Init: Git property init.templateDir was ignored
  • Preferences, Hosting Providers:
  • cancelling Edit might effect original data
  • Bitbucket: updating a token after having successfully checked connection did not validate the token again
  • Push: initially pushing a feature asked user for setting a JIRA issue in progress, but did not
  • Standard window:
  • improved/fixed display of repository tab bar
  • GUI:
  • natural sorting did not work reliably in all cases
  • if a table column was too wide (from the content), it was shown very narrow, e.g. in the Interactive Rebase dialog for commits with very long commit messages
  • Linux: bundled JRE: some required files had wrong permissions
  • Other Noteworthy Changes
  • Branches views: ahead/behind counts are drawn inverse now
  • Merging: added low-level property merge.preventMergingToFeatures to allow merging branches to features
  • Pull/Sync: improved performance
  • Standard window:
  • Add Branch: added low level property standard.addBranch.allowOverwrite
  • All Branches + Tags: ability to copy tag name
  • Copy ID/Message: work on multiple selected commits
  • Log:
  • Graph: pull request commits are rendered in black instead of gray
  • Syntax coloring:
  • YML: treat hashes not as partly numbers

New in SmartGit 22.1 Preview 7 (Mar 23, 2022)

  • New Features, Improvements:
  • Repository-related notifications: include repository name/path
  • Fixed Bugs:
  • Changes view:
  • Unified display: left and right change stripes could become out of sync with viewport
  • Clone wizard, Add Hosting Provider: internal error clicking OK
  • Commit message input field:
  • line-length guide incorrectly displayed for wrapped lines
  • Open Repository: possible internal error related to worktrees
  • Startup: bug file becomes reset when starting 2nd instance of SmartGit
  • Syntax:
  • Cmd/Bat: a single 'rem' line was not detected as line comment
  • Standard window:
  • clicking the [+] tab did not focus the repositories tree control
  • macOS: after installation directory update the .app icon was broken
  • Other Noteworthy Changes
  • Clone:
  • Select repository from hosting provider: added filter input field
  • Commit message input field:
  • File name completion: if there is some staged file, by default don't suggest paths from modified working tree files (low-level property commitMessage.completeAlsoWtFiles)
  • Repository Settings: split User & Encoding
  • Standard window:
  • by default don't show entries for renamed source files
  • Syntax:
  • Basic: support for ' line comments
  • upgraded to Java 17

New in SmartGit 22.1 Preview 6 (Feb 28, 2022)

  • New Features, Improvements:
  • Standard window:
  • Pull toolbar button: for multiple remotes separate actions to fetch separate remote
  • Working tree files: allow to open/edit (on Windows filetype specific using registry entries)
  • Fixed Bugs:
  • Changes view: error banner might remain after switching to a different file
  • Compare, Conflict Solver, ...:
  • Find & Replace: "Replace All" did not replace the occurrences before the caret/selection
  • Graph:
  • SHA column showed too many characters, partly truncated
  • Interactive Rebase: misleading error message when trying to invoke on the initial commit
  • Preferences dialog, Hosting providers: cancelling Edit dialog affected original data
  • Push: always configured tracking even if corresponding options were disabled
  • Refresh:
  • Files declared as binary in .gitattributes might be interpreted as text and showed up modified
  • Syntax coloring:
  • Bash: invalid detection of $() in some cases
  • Standard window:
  • After cloning an empty repository and performing the first commit, master showed warning about broken tracking
  • Commit: clicking an outgoing commit asked to replace even if the messages were equal
  • Edit Message was enabled while rebasing
  • History, Files: pressing Ctrl/Cmd+S on file selection triggered Save Stash instead of Save As
  • Output: might not show up the actual cause of an error
  • Push Up To: for a new branch did not configure tracking
  • GUI:
  • Some toggle actions/checkbox menu items did not work correctly
  • Find Command/Find Object popup: scrolling with mouse switched tabs
  • Windows: File Log did not scroll Files selection to visible area reliably
  • Other Noteworthy Changes:
  • Add Remote dialog: ability to enter/select absolute paths
  • Changes view:
  • "Take Ours" and "Take Theirs" work even for files too large to display
  • Consistent handling of errors in banner
  • If Next/Prev loads a different file, no popup is shown any more
  • Commit: for an empty repository, performing the first commit will create an empty first commit
  • Compare, Conflict Solver, ...:
  • Find & Replace: "Replace All" is now undoable in 1 step
  • Header text above file contents becomes selectable
  • Conflict Solver/Changes view: replaced "Stage" by "Mark Resolved"
  • External tools: for return values != 0 show a "failed" icon
  • GitHub: merge pull request dialog improvements
  • Graph:
  • Rebase: shows number of already rebased + overall number of commits
  • Log window:
  • Graph: improved bisecting coloring
  • Rebase Interactive dialog: allows to drag multiple commits
  • Refresh: support for sparse Git index files
  • Syntax coloring:
  • Bash: improved for commands between $( and )
  • Standard window:
  • Commit view: clicking the HEAD commit selects "Amend" checkbox also for repositories without remote
  • Changes view: shortcuts for Next/Prev change
  • File log: set shown refs to same as shown in repository Graph
  • Improved display of renamed files
  • Ref context menu: added Rebase (similar to Merge)
  • Start feature is enabled for empty repositories, but explains next steps to user
  • Working Tree window, Log window:
  • Files view: if the split table for index and working tree is shown, it will behave similar to the Standard window: keeping the empty working tree table visible if all changes are staged
  • Spell checker: added low-level property spellchecker.checkWordAtCaret
  • Setup wizard: option to select Standard window as default
  • SWT: setting focus should not bring the window to front
  • MacOS: Help menu missed search input field
  • Linux tar.gz bundle: rebuilt Git 2.35.0 on Ubuntu 18.04

New in SmartGit 22.1 Preview 5 (Feb 2, 2022)

  • Commit:
  • the first commit in an empty (externally initialized) repository will create an empty "initial commit", too
  • Log window:
  • Commit:
  • Open links works for pull requests, too
  • Graph:
  • Pull Request: added Drop Local to context menu
  • Standard window:
  • Commit:
  • shows current branch name as header
  • for feature branch more pushed commits are shown from the feature branch
  • display Submodules and allows to open them in separate tab (in Local Changes, Submodules)
  • improved feature workflow:
  • shows 3 buttons: Create, Integrate, Finish
  • Integrate prepares for a trivial Finish, integrating remote feature changes, integrating remote develop changes, pushing
  • Finish also works if not yet pushed, but based on latest develop commit
  • Output:
  • clicking the left-most status bar icon also can show the output of the currently running command
  • after a command fails, a detailed output dialog is shown by default, but can be configured to just show a auto-hiding popup
  • Repositories ("+") tab: added Select Obsolete Repositories and Move To commands to context menu
  • added shortcuts to access Repositories ("+") tab, Files, Graph and Commit views
  • Find Object and Find Command (Ctrl+P, Ctrl+Shift+P)
  • Fixed Bugs:
  • Changes view: error about too long lines showed line number zero-based
  • Commit:
  • in Modify-Rebase mode Commit triggered Step instead of Continue
  • Log window:
  • Commit: does not reliably update pull request comments once loaded
  • Refresh:
  • Log:
  • possible internal error in case of degenerated commit/tag objects
  • possible internal error related to non-standard lines in commit objects
  • for worktree repository, bisect-refs were not detected
  • file handle leak
  • Windows: could fail in case of broken directory junction
  • "slow clean filters" was over-ambitious
  • Syntax:
  • Shell script: several problems
  • Notifications may not be closable if showing up in multiple windows
  • Standard window:
  • Branches/Graph ref context menu:
  • right-clicking tag should not allow to check out
  • delete/merge was enabled for HEAD
  • Graph: "Local changes" banner sometimes kept showing for no local changes
  • Pull: false-positive warning "local branch seems to be a rewrite"
  • possible internal error because of incorrectly disposed repository controls
  • Init: endless spinning wheel in status bar
  • Stage: error staging a modified, renamed file
  • MacOS:
  • with dark system and light SmartGit theme the (x refs) box in the Graph was unreadable
  • "Show Standard Window" menu item was placed in wrong menu
  • Windows 11:
  • docking tabs: x button showed up as + (unicode character was no found)
  • Other Noteworthy Changes:
  • Hosting providers: for customer server, SSL system trust store ("WINDOWS-ROOT") is also used
  • Submodule update: shows progress (requires Git 2.27+)
  • Log window:
  • Repositories view: don't display uninitialized submodules (to be consistent with Working tree window)
  • Working tree window:
  • Journal: style similar to Graph
  • Git: updated to version 2.35.0
  • SSH: updated SSHJ library (required for newer SSH servers)
  • Preferences:
  • Commands, Commit: removed option "Use font configured in User Interface"
  • User Interface: changed "Use background color for file tables to indicate certain states" to the low-level property filteredTable.useBackgroundColor

New in SmartGit 21.2.2 (Jan 27, 2022)

  • Fixed Bugs:
  • Changes view: split-off block may miss background color
  • Cherry-pick: possible internal error related to subtrees
  • Conflict Solver: for LFS conflicts, left and right will show wrong contents (of base file)
  • Graph (macOS): (x refs) box with dark background on dark system with light SmartGit theme
  • Pull: possible internal error when trying to initialize SVN submodule
  • Refresh (Windows): internal error when trying to open repository located at special directory, like "C:UsersaccountMy Documents"
  • Other Noteworthy Changes:
  • Added low-level property "gitlab.additionalRequestHeaders"

New in SmartGit 22.1 Preview 4 (Jan 7, 2022)

  • New Features, Improvements:
  • Changes view: indicate LFS state
  • Files view: indicate LFS state
  • Standard window:
  • Compare with Working Tree
  • Integrate: allows to integrate ahead and behind feature branch without requiring to push first
  • Syntax coloring:
  • support for Groovy/Gradle scripts
  • Fixed Bugs:
  • startup: internal error related to settings
  • Blame: not readable in dark theme
  • Branches: remote branches did not show up for git config "smartgit.refLimit.remoteBranch[Include|Exclude]RegEx" configured empty
  • Edit Commit Message: for the HEAD commit, the message did not ended with a newline like for non-HEAD commits
  • Edit Ignore File: showed only subset of all available ignore files
  • Refresh:
  • false-positive "slow clean filters" warning
  • upper/lower case file name problems with .gitattributes (LFS)
  • possible internal error related to recursive definition of symrefs
  • Log:
  • Subdirectory Log: fails with "The specified path does not exist in the repository"
  • Standard window:
  • Changes view: changing font/size in preferences did not trigger redraw
  • Rebase Interactive: did not warn about modifying history
  • Linux:
  • selected tab is hardly noticable for dark system theme
  • Working Tree window:
  • Show Changes did nothing on partly staged files
  • macOS:
  • macOS 11, tables: scrollbar might not match table content
  • https://bugs.eclipse.org/bugs/show_bug.cgi?id=575259
  • Other Noteworthy Changes
  • Built-in SSH client: support for "--" parameter used by Git-LFS
  • Refresh: more efficient processing of filters (e.g. LFS)
  • Log:
  • Commit Details: limit amount of displayed "merged to branches" to prevent performance problems and internal error for too long, wrapped lines
  • Graph:
  • use gray as color for the signed symbol
  • use subtle indicator for multi-line commit messages
  • a tooltip shows more text for truncated messages
  • added Copy Name to context menu of ref
  • show triangle by default in refs to indicate HEAD ref (use log.graph.drawHeadRefWithTriangle to disable)
  • Refresh: for partial clones, avoid fetching root commits
  • drag and drop: don't starts scrolling too quickly
  • Standard window:
  • added LLP standard.filter.showPermanently to show the filter input field permanently
  • shows banner in Graph view if there are local changes
  • Start feature: offer "develop" as main ref, if present
  • Bug/crash report: if build is too old, asks to upgrade and don't send
  • updated the bundled JRE to 11.0.13
  • accelerators are ignored while a mouse button is pressed
  • support for commit dates > year 2038
  • license: only up to 3 machines

New in SmartGit 21.2.1 (Dec 22, 2021)

  • Fixed Bugs:
  • Changes view:
  • unexpected "Error reading file, Details: cancelled" for Git-LFS file which exceed the size threshold
  • possible internal error clicking "Force Compare"
  • Commit/Stash: possible error "unknown option `pathspec-from-file=-'" when using Git 2.25
  • External tools: ${commit2} was marked incorrectly as optional
  • Gravatar: fixed assertion for incorrectly sized images
  • Log:
  • Graph: memory leak of core objects after invoking popup menu
  • File log: internal error if deleting and re-cloning repository while file log is open
  • Refresh:
  • possible internal error "Unknown chunk ID ..."
  • internal error trying to open a repository which is actually a file
  • macOS bundle with invalid version information
  • Other Noteworthy Changes:
  • Changes view: added low-level property changesView.imageSupport to disable image support
  • Git-LFS: added low-level property status.forceUpdateIndexForLfsRepositories
  • Pull: added low-level property pull.propagateFetchTagsToSubmodules
  • SSH-Fingerprint confirmation: show as Base64-encoded SHA-256

New in SmartGit 22.1 Preview 3 (Dec 9, 2021)

  • New Features, Improvements:
  • Preferences:
  • added page for important options of the user's git config, e.g., user.name/user.email
  • Standard window:
  • Copy path/name on local directory (context menu)
  • Edit git config for repository and user
  • Ignore on local directory (context menu)
  • Integrate (Feature): streamlined workflow
  • immediately integrates main branch (and skips tracked branch) if the local branch is a complete rewrite of its remote branch
  • if Integrate is a no-op, tell the user to Push the branch to finally become able to Finish it
  • Pull defaults to Fetch if the branch is a rewrite of its remote branch
  • Fixed Bugs:
  • assertion starting SmartGit with previous settings
  • git config writing:
  • empty values in config files were not preserved
  • empty sections should not be created, but kept if existing
  • Tag grouping: might have written empty "taggrouping" section to config
  • Graph:
  • aborting a drag and drop (e.g. with Esc) over a link opened this link
  • Refresh: possible internal error opening bare repository containing .git directory
  • Standard window:
  • Clone:
  • failed silently if, e.g. the Git-LFS processing caused errors
  • if a clone in a different tab finishs, the active cloning card also became hidden
  • internal error cloning into a directory which was open as repository already
  • Discard: internal error invoking on selection with files and submodules
  • Local Changes Files: conflict file showed up in Working Tree and Index lists
  • Pull: showed "bas revision 'HEAD'" if repository was empty
  • Working Tree window:
  • Journal, Edit Message: actually invoked Add Tag
  • Other Noteworthy Changes:
  • Add Branch/Tag: use HEAD if invoked with focus in Branches view
  • Clone: shows progress for "Filtering content" phase
  • Commit and other operations: don't check for user.name/user.email
  • Conflict Solver (external): set low-level property externalConflictSolver.waitForProcess to false to wait until the command has finished before showing the resolve-dialog
  • Graph: improved auto-scrolling for drag and drop, especially with respect to when to start scrolling
  • Preferences:
  • User interface: option to load previously open repositories in "Preferred window" or the previously used window
  • Repository Settings: removed "Remember as default" option (because of the possibility to edit the defaults in the preferences)
  • Setup wizard: don't ask for user.name/user.email if ~/.gitconfig exists, but can't be read, or if it contains includes
  • SSH fingerprint confirmation dialog: show as Base64 encoded SHA-256 (as this is the information published by, e.g., GitHub)
  • set low-level property ssh.fingerprint.sha256 to false to see the old MD5-hex hash
  • Standard window:
  • My History, All Branches + Tags: clicking a ref should scroll it into view if already selected, but not visible
  • Working Tree window:
  • Compare: invoking on an unchanged file always compares with working tree file (to be editable), not with index

New in SmartGit 22.1 Preview 2 (Nov 26, 2021)

  • Fixed Bugs:
  • Log window:
  • Graph: 'origin=branch' ref pair shows up with wrong (gray) color if only remote branch is selected in Branches view
  • Refresh:
  • Graph:
  • possible internal error
  • possible "Unexpected type 'tag' instead of 'commit'" in combination with low-level property core.tags.loadDetails=false
  • "Pack index for ... does not exist" error
  • Syntax:
  • JavaScript/TypeScript: problem with `strings`
  • PHP: end of code section not detected correctly
  • Standard window:
  • Graph:
  • Filter: after revealing old node, preserve node in graph until a different branch or commit is selected
  • dragging of commits did not work
  • may unexpectedly reset selection back to older state
  • Other Noteworthy Changes:
  • Preferences: added option to make the Standard window the "preferred" window, no need for a low-level property any more
  • Added low-level property repositories.reopenUsingDefaultMode to always open the repositories that were open on exit in the "preferred" window
  • Added experimental low-level property log.graph.highlightSelectionColor to configure a color that is used to highlight the parent connector
  • Standard window:
  • added information to the My History and All Branches + Tags views
  • added Move or Rename

New in SmartGit 22.1 Preview 1 (Nov 22, 2021)

  • New Features, Improvements:
  • Graph view:
  • highlights the selected commit's first-parent history in bold (on HiDPI screens, for LoDPI screens set the low-level property log.graph.highlightStrongAtDpiScaling to 1)
  • https://smartgit.userecho.com/en/communities/1/topics/295-
  • Cherry Pick, Revert: support "Continue"
  • Fixed Bugs:
  • Changes view: if one image is refreshed, zoom was reset for that image only but not the other
  • File Log: possible incorrect mapping of refs to commits for skipped merges
  • Refresh:
  • certain cherry-picking and reverting states were not detected
  • a symlink to a file with non-ASCII characters in the name showed up as always modified
  • Linux: autohiding scrollbar in Graph caused problems, replaced by separate slider
  • Windows: bundled JRE was not detected under very special conditions
  • Other Noteworthy Changes:
  • Commits view:
  • for 2 selected commits shows the commit details for both commits
  • for >2 selected commits shows the number of the selected commits
  • Graph view:
  • more ref colors are available
  • used color is based on ref name (so is reproducible even on different machines)
  • in standard window and Log window with Default Coloring the commit dots use the branch color
  • unpushed commits are shown using a filled dot
  • improved filter responsiveness, especially for many matching commits
  • Standard window:
  • drag and drop is more strict about dragging a ref or commit (similar to the context menu)
  • less intrusive filter input fields for graph and file tables
  • Local Changes: the filter only operates on the Working Tree files, not on the Index files, same for the selected Directory
  • show separate page for a cloning repository
  • if there are local changes, Pull will be rejected completely (to prevent less easy to understand states)
  • Preferences:
  • for the Standard window the features can be limited to not overwhelm Git newbies
  • made more clear which Commands option influences what window
  • UI page: removed "Remember Log/Working tree" option because it was obsolete now with repositories remembered in what window they were opened
  • Extensions for syntax coloring: show modified (compared to default) with ability to reset to default
  • Search Repositories:
  • clear found repository list on new manual search
  • made found repositories list sortable
  • UI:
  • remember which repository was opened in what window type (and the order and current repository for the standard window)
  • split "Modify or Split Commit" into 2 separate commands
  • unified all graph context menus to have similar, more logic grouping of commands
  • use larger font in some dialogs
  • simpler icon (on macOS 11/12 better matching the others)

New in SmartGit 21.2.0 (Nov 18, 2021)

  • Fixed Bugs:
  • Changes view: hitting Refresh did not reload file content

New in SmartGit 21.2 RC 3 (Nov 16, 2021)

  • Fixed Bugs:
  • Changes View, Unified: possible internal errors
  • Other Noteworthy Changes:
  • change default for low-level property dnd.autoScroll.initialDelay to 500(ms) to avoid immediate scrolling for dnd operations near the edge of the Graph
  • update SWT
  • Linux: fix native memeory leak
  • MacOS 11 (M1): tables and trees had large borders
  • use https for autoupdate
  • tag-grouping detection should detect groups only after the last '/' and skip tag-grouping in case of multiple groups

New in SmartGit 21.1.3 (Oct 29, 2021)

  • Fixed Bugs:
  • Azure DevOps: should allow multiple configurations for different server URLs
  • Changes View:
  • Apply was available when starting within an inner-line change
  • possible internal error when reverting a black and changing the file once again while the confirmation dialog is showing
  • Journal: possible false-positive pushed commits for local, untracked branches
  • Kaleidoscope.app command line tool hang until SmartGit was closed; added a workaround

New in SmartGit 21.2 RC 1 (Oct 21, 2021)

  • Improvements:
  • Azure DevOps: allow multiple configuration for different server URLs
  • Fixed Bugs:
  • Changes view: Apply must not be available when starting within an inner-line change
  • Journal: possible false-positive pushed commits for local, untracked branches
  • Tag Grouping: configuration auto-detection may give too short (and generic) prefixes
  • Other Noteworthy Changes:
  • all changes from SmartGit 21.1.2

New in SmartGit 21.1.2 (Oct 1, 2021)

  • Fixed Bugs:
  • Azure DevOps: possible "Could not parse date" error on pull request refresh
  • Branches view:
  • Refresh may change selection from remote to local tracking branch
  • Tag message did not show up for grouped tags
  • Toggling remote ref might select local ref
  • Changes view:
  • If saving fails, error banner hides too quickly
  • Horizontal scrolling did not always update reliably
  • Possible assertion on Apply
  • Staging hunks for untracked-missing renamed file fails with "Failed to write file" error
  • Working Tree window: did not reliably refresh after failed save
  • Ignore: showed scary warning about discarding changes for untracked file
  • Log:
  • Files (working tree): ignored removed file which is locally existing does not show up unless View Ignored Files is selected
  • Refresh (Working Tree): automatic refresh did not clean up files after ignoring directory in non-root .gitignore
  • Refresh: possible internal error for commits with commit times > 2038
  • Other Noteworthy Changes:
  • UTF8 detection now scans full file instead of just the first 64kB
  • GitHub: shows reasonable warning in case of organization access restrictions
  • Low-level property "core.tree.filter.backwardCompatibilityWithNonUnicodeGitOnWindows"
  • Table controls: if low-level property table.scrollToSelection is set to false, ignore the selection's visibility

New in SmartGit 21.2 Preview 2 (Sep 30, 2021)

  • Fixed Bugs:
  • Azure DevOps: possible "Could not parse date" error on pull request refresh
  • Branches view:
  • Changes view:
  • Working Tree window: did not reliably refresh after failed save
  • Ignore: showed scary warning about discarding changes for untracked file
  • Log:
  • Refresh: possible internal error for commits with commit times > 2038
  • Other Noteworthy Changes:
  • UTF8 detection now scans full file instead of just the first 64kB
  • Low-level property "core.tree.filter.backwardCompatibilityWithNonUnicodeGitOnWindows"
  • Table controls: if low-level property table.scrollToSelection is set to false, ignore the selection's visibili

New in SmartGit 21.1.1 (Aug 12, 2021)

  • Fixed Bugs:
  • BitBucket: possible internal error on refresh
  • Changes pane:
  • maximum size limit was not applied to images possibly resulting in out-of-memory errors
  • possible out-of-memory error when selecting large file and having "core.autocrlf=input" configured
  • Stage did nothing on "Added" conflicts
  • fixed names on Unstage/Revert Hunk
  • Working Tree window: Changes pane does not show file if it is made visible while a file already was selected
  • Conflict Solver:
  • external conflict solver: temporary files may be corrupted by replacing LF with CRLF
  • Refresh:
  • index files format 4 could not be read
  • fails for repotool files which have been initialized with --worktree option
  • Windows: might fail if file in repository was inaccessible (regression since 20.2)
  • Setup: possible internal error with invalid msysgit-installation location
  • Startup: --log with a file fails with "Cache has not yet been updated/initialized"
  • Syntax coloring:
  • Java: binary and hex literals were not detected correctly
  • PHP: 'strings in quotes' are not detected in script mode
  • MacOS 11: radio button selection changes invisibly when clicking a dfifferen tab item
  • Other Noteworthy Changes:
  • Syntax coloring:
  • SQL: use standard SQL without backslash escaping in strings

New in SmartGit 21.2 Preview 1 (Aug 9, 2021)

  • Use Windows root trust store for SSL connections
  • Pull, Commit, ... dialogs: use checkbox as expand control

New in SmartGit 21.1 (Jul 12, 2021)

  • Fixed Bugs:
  • Changes view: possible paint artefacts by resizing window

New in SmartGit 21.1 RC 6 (Jul 9, 2021)

  • FIXED BUGS:
  • Changes view:
  • possible internal error
  • macOS: selecting a different file did not reliable redraw the viewport rectangle inside the changes stripe
  • Log:
  • Drag and drop-cherry-picking to Branches view didn't work for multiple commits (as within the Graph)
  • selecting a different open repository must not wipe the Output view
  • Refresh: possible internal error related to tag-grouping-detection when opening a repository for the first time
  • Tag Grouping: configuration auto-detection may give too short (and generic) prefixes
  • OTHER NOTEWORTHY CHANGES:
  • Chinese translation updated

New in SmartGit 21.1 RC 5 (Jul 2, 2021)

  • Fixed Bugs:
  • BitBucket: redundant "access token"-refresh requests if integration and OAuth is enabled
  • Internal error if java.library.path contains invalid entry
  • Log:
  • File log: internal error when invoking Files, Rename
  • Repositories, Refresh:
  • After switching branches, obsolete submodules may remain
  • After switching branches, state of new submodules should be populated
  • Refresh: possible "submodule has error-prone admin area configuration" warning for main repositories created with "--separate-git-dir"
  • Submodule, Initialize: problems with named submodules
  • Stash:
  • Quick Stash behaves like normal Stash (showing a dialog)
  • Stash on Demand: must not apply if operation stopped in abortable state (rebase, merge, ...)
  • Windows: internal error checking directory type under special conditions

New in SmartGit 21.1 RC 4 (Jun 17, 2021)

  • Fixed Bugs:
  • Changes View: paint artefacts might occur workaround for https://bugs.eclipse.org/bugs/show_bug.cgi?id=574272
  • Investigate: if gravatars were disabled, no self-rendered gravatars were shown
  • Log: possible internal error in node cache
  • Refresh: possible internal error refreshing tracking state
  • Syntax:
  • SQL: 'string' did not recognize all escapes correctly
  • Other Noteworthy Changes:
  • Added low-level properties "ignoreRemote[Hotfixes|Releases]OnStartOfNew[Hotfix|Release]"

New in SmartGit 21.1 RC 3 (Jun 10, 2021)

  • NEW FEATURES, IMPROVEMENTS:
  • Diff tools: support for ${baseFile} in addition to ${leftFile} and ${rightFile}
  • FIXED BUGS:
  • Azure integration: possible OAuth-related internal error
  • Changes view:
  • Apply Selection did not work on a subset of added block (same holds true Revert Selection and removed block, regression since 20.2)
  • internal error when trying to apply selection of modified block which has no inner-line changes
  • Take Ours/Theirs and Recreate Conflict may show false-positive warnings about manually modified files
  • Diff Tools: possible confusion of ${rightEncoding} with ${leftEncoding}
  • Distributed Reviews: deleted comment not denoted as "deleted" (strike-through) until repository is reopened
  • Edit User Config: may open the wrong config file or fail to open non-existing file (especially on Windows with HOME, HOMEDRIVE and HOMEPATH)
  • Find Objects: possible internal error when selecting a tag to check out
  • GitLab: fix "local merge request commits differ from server-side commits" for merge request which is merging back and forth with target branch
  • Investigate (Linux): tooltips without readable text in dark theme
  • workaround for https://bugs.eclipse.org/bugs/show_bug.cgi?id=573760
  • Log:
  • Graph: does not update if having only toggled old ref
  • Partial clone: fetch-on-demand should disallow auto gc
  • Syntax:
  • SQL: incorrect detection of comment
  • OTHER NOTEWORTHY CHANGES:
  • Changes view: can show an error message permanently in a banner
  • Changes view/File Compare: fine-tuned default colors for dark theme to have better contrast
  • Discard: low-level property discard.safeDefault=false hides "Discard to Stash" button
  • Log:
  • Graph:
  • when filtered, de-facto inapplicable history-related actions (like Edit Commit Message) should actually be disabled
  • while filtering the buttons "Reveal", "Reset" and "Rerun Thorougly" have a tooltip with further information
  • restored manifest of smartgit.exe
  • added command line option --add-tool for adding diff or merge tools, e.g.:
  • smartgit.exe --add-tool type=diff pattern=*.eap "command=C:Program Filesdifftool.exe" "parameters=${leftFile} ${rightFile}"
  • smartgit.exe --add-tool type=merge pattern=*.eap "command=C:Program Filesmergetool.exe" "parameters=${leftFile} ${rightFile} ${baseFile} ${mergedFile}"
  • Git execution (Windows): if HOMEDRIVE+HOMEPATH is no valid directory, fall back to USERPROFILE

New in SmartGit 21.1 RC 2 (May 19, 2021)

  • Fixed Bugs:
  • Azure DevOps: wrong "Open"-link in Commits view for on-premise instances
  • Branches view: missing Tag-grouping "group" node if all tags belong to this group
  • External Conflict Solver: left and right files might have incorrect line-endings
  • File Log, Blame, Investigate: possible internal error related to shallow repositories
  • Files view: banner might be not layed out correctly if another tab is on top of it
  • Log:
  • Changes view:
  • left side may not update properly after committing some sorts of file-renames
  • incorrect rendering of the [>] symbol for hidden change
  • "Stage" did not work for deleted-both conflicts
  • Files view:
  • Cherry-Pick and Revert must not be available for 2-commit diffs
  • Resolve: Take Ours, Take Theirs was not available for all kinds of conflicts
  • Other Noteworthy Changes:
  • Add Tag:
  • select "GPG sign tag" only if text is provided (to prevent wrong assumption)
  • Hosting Providers:
  • set default of "hostingProvider.ignoreSubDomainsForConfigurationDetection" to "true"
  • removed Assembla, Beanstalk, Codebase, Unfuddle (some implementations were entirely broken, support for others was quite poor compared to the full featured remaining providers)

New in SmartGit 21.1 RC 1 (May 5, 2021)

  • New Features, Improvements:
  • GitHub: denotes in toolbar icon whether the access token is outdated
  • Fixed Bugs:
  • Azure DevOps:
  • fixes for on-premise instances
  • comments created in SmartGit don't show up properly in the web frontend (missing leading /)
  • internal error if reply is linked to deleted comment
  • Changes view:
  • internal error applying a removed block at the beginning of a file
  • Fixed a couple of memory or ressource leaks
  • Other Noteworthy Changes:
  • Increased upper limit for repositories.maxRepositoriesToOpenByDoubleClick

New in SmartGit 20.2.5 (May 4, 2021)

  • Fixed Bugs:
  • BitBucket: redundant "access token"-refresh requests if integration and OAuth is enabled
  • Internal error if java.library.path contains invalid entry
  • Log:
  • File log: internal error when invoking Files, Rename
  • Repositories, Refresh:
  • After switching branches, obsolete submodules may remain
  • After switching branches, state of new submodules should be populated
  • Refresh: possible "submodule has error-prone admin area configuration" warning for main repositories created with "--separate-git-dir"
  • Submodule, Initialize: problems with named submodules
  • Stash:
  • Quick Stash behaves like normal Stash (showing a dialog)
  • Stash on Demand: must not apply if operation stopped in abortable state (rebase, merge, ...)
  • Windows: internal error checking directory type under special conditions
  • Other Noteworthy Changes:
  • Low-level property "smartgit.nodecache.subtrees.enabled" to disable subtree detection and functionality
  • Tag grouping: "name" extraction should be honored in Branches view groups, too

New in SmartGit 21.1 Preview 6 (Apr 27, 2021)

  • NEW FEATURES, IMPROVEMENTS:
  • Branches:
  • ability to copy ref group prefixes
  • Changes View:
  • Apply Line: is also allowed now if source and target have same line count
  • Apply Selection: much more powerful than before
  • Git-Flow, Finish: merge/rebase default based on "no-ff=true"
  • Local | Fix Line-Endings: to rewrite text files with a certain line-ending
  • Log:
  • Graph: if "log.graph.preserveParentOrder" is "true", layout order of parents should observe parent-order regardless of Git-Flow branch priorities
  • Show Changes: don't ask for what to compare if it is obvious from the selection
  • set low-level property showChanges.askForIndexAndWtModifiedFiles to true to enforce the previous choice
  • FIXED BUGS:
  • Changes view:
  • Unified: possible internal error staging/unstaging change
  • Check Out:
  • checking out remote branch did not suggest appropriate local branch name anymore
  • checking out remote branch did nothing when clicking OK
  • Commit:
  • possible duplicate confirmation dialog using Commit & Push
  • shouldn't allow to amend in "merging" state, but allow to amend in "reverting " state (like Commit view)
  • GitLab: problems creating/assigning merge request comments if target commit is not the base commit
  • LFS Install: did not trigger refresh so other LFS commands remained disabled until the next refresh
  • Log:
  • Graph:
  • possible unnecessary twisting connectors related to Git-Flow
  • possible display of stashes though "Stashes" node in Branches view was unselected
  • opening repository in "rebasing" state may fail
  • switching repositories quickly should not open new window
  • Linux:
  • internal error typing accent characters because of GTK bug: https://bugs.eclipse.org/bugs/show_bug.cgi?id=571740
  • Syntax:
  • Shell: heredoc problems
  • OTHER NOTEWORTHY CHANGES:
  • Check for New Version: don't offer already downloaded updates to install on startup if Check for New Version is disabled
  • Log:
  • File log: improved startup time
  • moved View | Tag-Grouping into Repository | Settings

New in SmartGit 21.1 Preview 4 (Mar 31, 2021)

  • New Features, Improvements:
  • Changes view: show common images side-by-side
  • Changes view, Compare: keyboard shortcuts for staging hunks, lines, inner-line changes
  • Compare, Conflict Solver, ...: optionally replaces tabs with spaces, backspace unindents leading spaces (preferences option)
  • Log Graph, Journal
  • show tiny gravatar by default
  • if no gravatar is found (or it is disabled in the preferences), own images based on the initials and email are created
  • JIRA, Git-Flow, Push: optionally set a feature in-progress
  • Fixed Bugs:
  • Changes view:
  • incorrect Delete Block text, wrong confirmation
  • Clone: for "svn" and "svn+ssh" protocols, automatically use SVN
  • Log:
  • Graph:
  • switching between "Follow Only First Parents"/all loaded to many commits
  • possible flickering with "Follow Only First Parents"
  • possible internal error during refresh for "experimental.nodeCache.useCommitGraph=true"
  • File Log: Branch/Merge Coloring did not work if no HEAD was shown
  • Merge Coloring (including Merge and Cherry-Pick dialog): false-positive mergable commits if HEAD is not shown
  • for Mergable/Branch coloring top-most node may show up in gray, even it's "matched"
  • Branches:
  • internal error unselecting all refs
  • Refresh: possible internal error after a "git repack"
  • Pull/others: false-positive warning about SVN though pure Git repository
  • Syntax:
  • Java: bug in lexing escape characters in Strings
  • YAML: problem with ' in values
  • Working Tree window:
  • Log Chooser dialogs: possible flickering when opening (outdated graph showed up for a short while)
  • Other Noteworthy Changes:
  • Changes view: compact display is default now
  • Ignore
  • remembers selected destination
  • added low-level property ignore.supportTrackedDir to ignore tracked directories
  • Log:
  • Graph:
  • switched to Git commit-graphs (instead of own node cache)
  • switching between "Follow Only First Parents"/all should preserve commit order better now
  • "Follow Only First Parents": layouts new roots downmost - see log.graph.sortingRootOrder
  • "Show working tree node permanently" is the default now - see https://twitter.com/smartgithg/status/1370385647719084040
  • "Sort Merge Parents First" is default now (because "git log --graph" uses this approach, too)
  • improved filter performance
  • double-clicking on a commit while bisecting: default to checkout the commit (not creating a branch)
  • Files: replaced "Unmodified" with "Unchanged"
  • Working Tree window:
  • Merge, Cherry-Pick and others: remembers graph roots independently
  • updated bundled Git to version 2.30.2 (fixing security leak https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-21300 when cloning LFS repositories)
  • Windows: use system proxy by default (set java.net.useSystemProxies to true if it is unset)

New in SmartGit 21.1 Preview 3 (Mar 10, 2021)

  • New features:
  • Working tree window: keep scroll position when switching between HEAD-Index and Index-Working Tree
  • Go to Next/Prev Change: if there is no more change, select at least the last one
  • Commit view, file name completion: suggest staged items before unstaged ones
  • Discard: remembers the last used option
  • Git: support for "init.defaultBranch"
  • Log:
  • Files: denotes case-changed file name (and possible duplicate) like in the Working Tree window
  • Open From Working Tree: works on multi-selection
  • Rename (Windows): allow to rename case-changed file back to original Git name, e.g. Index name
  • Syntax:
  • Shell script: support for heredoc
  • Fixed Bugs
  • Did not scroll to single deletion at end of file
  • Ignore Line Endings was not honored
  • Switching from Unified to Side-by-side view, caret may be off 1 line
  • Unified view: Goto Next/Previous did not work for change block at end of file
  • Working Tree window: Changes view not populated after being made visible
  • File completion (in file/directory path input fields): completion should not replace symlinks by absolute paths
  • GitLab: pull requests may not show up if they originate from repositories for which the current user is no "member"
  • Graph:
  • Hiding the empty working tree node was visually noisy
  • Toggling a ref was noisy for selected Follow Only Primary Parent option
  • Merge coloring was influenced by the Follow Only Primary Parent option
  • Log:
  • Files: Submodule Log (History of Updates) may fail with "missing object" error
  • Graph: for orphan checkouts, Working tree node should always show up
  • File Log: possible internal error after external commit to repository
  • Refresh (Linux): possible native crash related to overflow of memory-mapped file handles
  • Syntax:
  • ANTLR: range with backslash might be parsed too greedy
  • Other Noteworthy Changes:
  • From now on SVN support is only available in commercial edition
  • Add Branch: warn if branch starts with <remote>/
  • Added low-level property push.modifyPushedCommitsCheck.skipGitFlowFeatures to optionally skip modify-pushed commits check for feature branches
  • Added low-level property commandDialogs.rememberOptions to avoid remembering last used options in command dialogs
  • Log graph, colorings: don't use red one because red might be considered as something to worry about (e.g. invalid state)
  • Table controls: if the selection is scrolled outside the visible view, a refresh should not try to scroll it into view

New in SmartGit 20.2.4 (Mar 9, 2021)

  • Fixed Bugs:
  • Investigate: possible "missing blob" error when selecting commit which contains removed submodule
  • Changes view: possible redundant refreshing if repository is a worktree
  • Edit Commit Message: did not warn before modifying pushed commits if HEAD was selected
  • Gerrit: detection fails if hooks/commit-msg is a symlink
  • Log:
  • Files: Blame should not be available on submodules
  • File Log:
  • Failed to open for deleted-by-us conflict
  • - (re)selecting "Index" node should reset Files/Changes view
  • Refresh:
  • Possible internal error for submodule entries containing // in .git/config
  • Working Tree window: possible wrong matching between submodule entries in .git/config and .gitmodules
  • Syntax:
  • Shell: invalid parsing of $'foo' or $(command parameter)
  • Other Noteworthy Changes:
  • Announce end-of-life for SVN support on 2022-12-31

New in SmartGit 21.1 Preview 2 (Feb 22, 2021)

  • New Features, Improvements:
  • Changes view, Compare, Conflict Solver:
  • Find dialog improved
  • Shows over appropriate side
  • Hide replace parts for readonly views
  • Log:
  • Push, JIRA: optionally set the issue 'in progress'
  • Various branch-related commands: slightly improved responsiveness
  • Graph:
  • Filter banner shows up immediately to allow changing options
  • Refresh:
  • For problems, include details in the dialog
  • Partial clone support:
  • Https://smartgit.userecho.com/communities/1/topics/1223-
  • Subtree support:
  • Add: optionally create local tracking branch
  • Branches view: "Subtrees" node
  • Push: directly split and push changes without requiring local subtree-branches
  • Fixed Bugs:
  • Changes view:
  • Internal error when selecting binary file and switching to Unidiff view
  • Working tree window: staging a change scrolled back to first change
  • Refresh:
  • Possible "refresh failed" error when restoring currently open repository from backup
  • Set Tracked Branch: possible "<refname> is ambiguous" error
  • Subtree: possible redundant inefficient processing
  • Syntax:
  • Shell scripts: incorrect escaped characters in strings
  • Other Noteworthy Changes:
  • Background fetch of Open Repository: changed default to unselected
  • Bisect: if the HEAD was reset, reveal it
  • Changes view: should not show blocks for added/untracked, removed/missing files
  • Changes view, Compare, Conflict Solver, ...:
  • Try to keep [<<], [X], [>>] buttons visible for partly outside blocks
  • Clone:
  • By default, don't show "VCS type" dialog
  • When selecting to clone just a single branch, "git clone --single-branch" is used
  • Reset: added low-level property reset.default to configure the type used by the "normal" reset command
  • Working Tree window: report problems in case of missing repository

New in SmartGit 20.2.3 (Feb 15, 2021)

  • Fixed Bugs:
  • Branches: stashes might be missing in case of corrupted logs/refs/stash file (which still could be processed by Git)
  • Changes View: no caret was visible
  • Distributed Reviews: showed duplicate comments on left side
  • Log:
  • Files: possible internal error related to deleted-by-us submodule conflicts
  • Graph: possible "missing blob" error when selecting commit which contains removed submodule
  • Refresh: possible internal error related to concurrently changing, renamed files
  • Spell checker: could not read files with UTF-8-BOM
  • Startup/opening repository: possible internal error related to file-system probing of special network drives
  • Syntax:
  • Fixed C# and SQL parsing of # lines, also fixing a performance problem
  • Python: a line containing only a # was not detected as comment line
  • Worktrees: for some minor internal operations the worktree's config file was search at the wrong location
  • Other Noteworthy Changes:
  • Git-Flow:
  • Added low-level-property "gitflow.external.avh1.12"
  • Log:
  • Details: possible confusion about "Tags", "Same State Tags" and "Closest Tags"
  • Graph, Filtering: horizontal space better used for filter options
  • Having SmartGit running only in the tray, launching it a 2nd time reopens last repositories

New in SmartGit 21.1 Preview 1 (Feb 10, 2021)

  • NEW FEATURES, IMPROVEMENTS:
  • Changes view:
  • completely rewritten
  • new "Unified" display option
  • syntax highlighting even in compact mode
  • manual expansion in compact mode
  • apply changes in compact or unified mode, too
  • Compare:
  • select from multiple configured, matching file compare tools
  • improved memory consumption related to syntax coloring
  • GitHub/other hosting providers: allow to fetch conflicting pull requests and denote as "conflicting"
  • History-based commands: allow to rewrite merge commits
  • Log:
  • Branches view: context menu item to forget about commit entries
  • Files view:
  • Split-Off Commit
  • Cherry Pick selected files only
  • Graph:
  • double-clicking a local branch symbol checks it out
  • File log: for grouped tags denotes whether all tags are signed
  • Rebase Continue: optionally don't show confirmation dialog again
  • Modify or Split Commit: allow to stop/edit all commits
  • Refresh: performance improvements
  • Working Tree window:
  • Add Branch: considers Branches view selection
  • FIXED BUGS:
  • Log:
  • Revealing a stash did not always ensure that the base commit was loaded
  • Rebase Continue: might fail if commit message contains leading #
  • Syntax:
  • several languages were too restrictive, e.g. for lines starting with # - which was wrong and slow
  • OTHER NOTEWORTHY CHANGES:
  • updated Git to version 2.30.0
  • Log, Graph: when autoscrolling while drag-and-drop, don't scroll to 'wrong' direction
  • unified Find Action and Find Object in one popup
  • wizards: unified [Next >] and [Finish] buttons
  • Branches view: changed order of context menu items
  • more specific refresh progress for expensive tasks like rebuilding the Log Cache
  • File icons: more modern look, easier to distinguish by color-blind people
  • Compare: enabled smart tab handling by default
  • low-level-properties:
  • defaults for executable.addBinDirectoryToPath and credentials.improvedPromptHanding changed to true
  • renamed gui.* to ui.*
  • if a file or directory chooser is shown, the display of other dialogs (from other threads) is delayed until the file or directory chooser is closed
  • make opening multiple repositories easier by setting the low-level property repositories.maxRe

New in SmartGit 20.2.2 (Jan 13, 2021)

  • New Features, Improvements:
  • MacOS: added low-level property envVarParser.timeout to configure the timeout for slow login shells
  • Fixed Bugs:
  • Changes View, Compare, ...: internal error trying to stage/apply a selection at the file end
  • Log: possible internal error related to layouting very broad graphs
  • Preferences: internal error clicking search icon in search input field
  • Set Tracked Branch: possible internal error for branch names like "2%"
  • Syntax coloring:
  • Java: 100f is not detected as one number, but as 100 and f
  • JavaScript: missed RegEx string
  • MacOS 10.15: problem parsing environment variables if 'tcsh' is used as shell
  • Other Noteworthy Changes:
  • Updated SWT
  • Linux: internal error changing screen DPI https://bugs.eclipse.org/bugs/show_bug.cgi?id=568641

New in SmartGit 20.2.1 (Dec 17, 2020)

  • New Features, Improvements:
  • Commit, line-length guides: added low-level properties commit.lineLengthGuide.limit1/limit2/limit3 to configure limits
  • Log - Select Parent/Child Commit has less priority if a file is selected; makes is easier to use the same shortcut for other commands, e.g. Previous/Next Change
  • Fixed Bugs:
  • Files - "inactive" submodules did not show up despite of selected "Show Ignored File"
  • Internal error selecting Files tab if it is in the same tab group as the Changes view
  • Graph (File log) - for grouped tags, denote whether the first tag is signed
  • GitHub:
  • During refresh comments vanished temporarily in Changes view
  • Refresh:
  • Windows - possible false-positive modifications of symlinks
  • Internal error in case of corrupted filemode bits in .git/index
  • Subtree, Add - may fail with "terminal prompts disabled" message

New in SmartGit 20.2.0 (Nov 23, 2020)

  • Fixed Bugs:
  • Journal: possible internal error on drag and drop
  • Log:
  • Interactive Rebase, Modify/Split Commit: menu items should not be disabled because of merge commits (but though reject to operate because of merge commits)
  • Remove Worktree: possible internal error if working tree was open in multiple windows
  • Stage: reported warnings about unrelated inaccessible directories
  • Other Noteworthy Changes:
  • Ignore dialog: added low-level property "ignore.defaultSelection" that influences which option is selected by default depending on the selected file count and names
  • LFS: added low-level property "executable.addBinDirectoryToPath" to prepend the Git bin directory to the PATH, because otherwise for some configs git-lfs is not found
  • Log:
  • Graph: added low-level property "log.graph.drawSignedIcon" to hide the icon for signed commits

New in SmartGit 20.2 RC 5 (Nov 11, 2020)

  • NEW FEATURES, IMPROVEMENTS:
  • Syntax: added support for Swift
  • Log, Files: when comparing 2 commits, the younger commit is displayed by default on the right side
  • FIXED BUGS:
  • Refresh:
  • possible unexpected "untracked" state of intermediate directories on the path to a submodules on case-insensitive file systems
  • Working tree window (Windows): performance drawback due to possible redundant file content checks
  • Subtree | Reset: possible internal error
  • OTHER NOTEWORTHY CHANGES:
  • Discard: added low-level property discard.safeDefault to allow to default to the Discard button instead of Discard to Stash
  • Table controls: added low-level property table.copySelectionWithCtrlC to disable the default Ctrl/Cmd+C shortcut for copying the selected line content
  • anonymized email address is sent (<hash>@domain.com)

New in SmartGit 20.2 RC4 (Nov 3, 2020)

  • New Features, Improvements:
  • Git-Flow: added low-level properties gitlfow.finishRelease.message and gitflow.finishHotfix.message
  • Syntax coloring: "JavaScript" became "JavaScript/TypeScript" also supporting .ts extensions
  • Fixed Bugs:
  • Log: for some operations (like Add Branch) an unnecessary working tree refresh was performed
  • GitHub/GitLab/Bitbucket: fetching conflicting pull requests may result in empty "pull request" commit instead of declaring failure
  • Refresh:
  • possible inconsistency in internal ref-state which may cause various problems, including crashes
  • Windows: inefficient refreshing on subst-ed drive
  • startup: possible random internal error recreating <settings>/hgext

New in SmartGit 20.2 RC3 (Oct 28, 2020)

  • Fixed Bugs:
  • Branches:
  • stashes are not shown in worktree repository
  • tooltip used inappropriate colors in dark theme
  • GitHub/GitLab/BitBucket: for pull requests of branch with multi-level names, e.g. feature/next/one, fetching pull request gave duplicate entry
  • Gravatar: sometimes the updating of the images did not work correctly
  • Repositories view: bare repository was not accepted on drag and drop
  • Repository | Add or Create: bare repository was treated as normal directory
  • SWT: possible internal error related to IME
  • https://bugs.eclipse.org/bugs/show_bug.cgi?id=568033
  • Other Noteworthy Changes:
  • Syntax coloring: if the lexing process takes longer than by default 1s, it will be aborted (configurable with the low-level property syntax.timeout)

New in SmartGit 20.2 RC1 (Oct 13, 2020)

  • Fixed Bugs:
  • Discard: internal error when using the Stash option with too old Git version
  • Log:
  • Commit view: might not show all content if too narrow
  • Files (Working Tree): "EOLs only" modifications did not show up as in the Working Tree window
  • Preferences, Searching: the first matching tree node was selected, but not the corresponding page
  • Syntax:
  • some block comments like /***/ were not detected correctly, e.g. for Java
  • Rust: incorrect handling of character literals
  • V: bug in escaped character
  • Other Noteworthy Changes:
  • Changes view: setting syntax language shows a warning dialog now if Compact Change Display is selected
  • increased requirement for Git 2.16+, if older version is detected, the bundled 2.28 is selected
  • Log, Commit view: changed order of branches and tags sections from more to less important
  • Rebase: aborting showed a success popup which confused some users
  • added low-level property progress.showInTaskbar to deactivate showing the command progress in the task bar

New in SmartGit 20.2 Preview 6 (Sep 30, 2020)

  • New Features, Improvements:
  • Commit:
  • Commit view: option in the ? menu to show all commit dialog options, including a gravatar image of the current user/email (use click to change)
  • remembers "Signed-off by"-option for repository
  • GitLab:
  • Create Merge Request: optionally specify an Assignee
  • Pull:
  • rebase uses "--fork-point" by default (low-level property "pull.rebase.detectForkPoint")
  • Rebase:
  • Continue: allow to continue without committing untracked files
  • Fixed Bugs:
  • Graph/Journal (Linux): scrolling with mouse wheel occurred in too large steps
  • Log:
  • Graph: context menu could show 2 items for "Format Patch"
  • Commit view: amend checkbox was drawn over Commit button on Linux
  • Tools menu of working tree window did not contain general commands
  • Other Noteworthy Changes:
  • Confirmation dialog for rebasing commit range: show information about recyclable commit and don't offer to create tag
  • Keyboard shortcuts: distinguish between (Repository) Close and (Window) Close

New in SmartGit 20.1.5 (Sep 29, 2020)

  • Fixed Bugs:
  • Commit view with commit template message does not clean comment line (as Commit dialog does)
  • Compare: options for ignoring whitespace are not remembered on "Remember as Default"
  • Git-Flow, Start Feature: fixed wording in case of fast-forward merge is necessary
  • Log: possible internal error with swapped node cache
  • Passwords file: possible empty error dialog in case of corrupt passwords file
  • Update check is disabled after setting up SmartGit as registered user
  • Workaround for https://bugs.java.com/bugdatabase/view_bug.do?bug_id=JDK-8253212

New in SmartGit 20.2 Preview 5 (Sep 18, 2020)

  • New Features, Improvements:
  • Log:
  • Graph:
  • Re-added toolbar buttons for "Reveal HEAD/Working Tree" (Alt+Home) and "Go to previous selection" (Alt+Left), shortcuts are similar like in web browsers
  • Automatically hide revealed working tree if
  • HEAD changes (e.g. after switched branch)
  • It becomes empty after it was non-empty (e.g. after commit or discard)
  • - 40% performance improvement when filtering for File Name
  • File log: don't display redundant merge commits for which the file has been added
  • - Files:
  • Show Rename Source Files: should be applicable for commit file listings, too
  • Syntax coloring:
  • New support for Dart, Nim and V
  • HTML: support for <script>...</script> section
  • Java: support for multiline strings and new keywords in Java 13
  • Java, Kotlin: different color for types (depending on case)
  • Shell Script: support for variables inside "strings"
  • Unified some colors, removed obsolete "No code"
  • Linux tar.gz bundle: ships with Git now, because too much Linux versions have too old Git installations
  • Fixed Bugs:
  • Discard to Stash: fails in case of conflicting files
  • Log:
  • File log: fails on directory which is not present in HEAD anymore
  • Opening a new repository should not open a new window if refresh is in progress
  • Syntax coloring:
  • Shell script: lexer was buggy
  • Temp directory: lock file could be deleted by user
  • Other Noteworthy Changes:
  • Bitbucket Server: reduced fetched repository data for provider setup "ping"
  • Log:
  • Graph: move "Insignificant Merges" option from Branches view to options menu
  • Working tree refresh: minor performance optimization
  • Preferences, Search:
  • Find in tree item text
  • Select first matching tree item
  • Tab control (Linux, Windows): switch tabs using Alt+Left/Right
  • Updated bundled Git to version 2.28.0
  • Updated bundled JRE to version 11.0.8

New in SmartGit 20.2 Preview 4 (Sep 2, 2020)

  • NEW FEATURES, IMPROVEMENTS:
  • Subtree:
  • Add command
  • Reset: allow to create empty "marker" commit
  • Preferences: added search input field
  • Branches: added "Select Obsolete Local Branches" menu item to ☰ menu
  • Find Object (Ctrl/Cmd+P): also treats space separated search patterns as separate sub patterns
  • Discard: by default (optionally) stashes local changes (kind of Undo-capability)
  • Merge/Rebase: will not disabled in all inappropriate cases, but rather shows an information why is it not possible (otherwise it is not obvious for novice users)
  • Tools (Windows): default tool for editing in Notepad
  • Changes/Compare/Index Editor/Conflict Solver: UTF-32 support, e.g. emojis
  • FIXED BUGS:
  • Log:
  • Graph:
  • possible internal error related to certain rebasing states
  • dragging range of commits should only offer to rebase for HEAD, not other branches
  • possible confusions using multiple subtrees in the same main repository
  • internal error trying to drag "Working Tree/Index" node
  • Revision column for SVN repository was too dark in dark theme
  • Commit view:
  • GitHub/others: improved detection of correct URL for Open link
  • Branches, Subtrees: checking out tag did not perform subtree check
  • Changes view: problem when trying to stage unicode characters which had been added to plain ASCII file
  • Investigate: internal error on macOS
  • Refresh:
  • Resolve: might fail with "git rm invalid usage" error
  • Stage: be more tolerant in case of file system traversal errors, e.g. broken symlinks/junctions
  • Tools: removed obsolete ${hg} and ${hgDir} parameters
  • SVN:
  • Clone: possible problems when opening a background cloing repository in a second window
  • OTHER NOTEWORTHY CHANGES:
  • Log:
  • Graph: rearranged drag and drop menu to have more stable positions of menu entries
  • Files: when comparing the Working Tree/Index with a commit, a banner is shown explaining that the Index is compared with the commit
  • Add Repository: resolve "core.worktree" before adding repositories to avoid subsequent warnings about unsupported "core.worktree"
  • Refresh: improved warning for "unsupported" core.worktree
  • Branches, Subtrees: Merge/Reset operations are available for subtree refs
  • Files view: for nested roots, Ignore also is available in context menu
  • Remote, Rename: uses same editing logic as Remote Add, e.g. replacing spaces with underscores
  • Clone: for the Check Out Branch first suggest "master", then "develop", then remote HEAD
  • Stage: log warnings for files which are ignored due to certain "access denied" problems
  • Syntax coloring:
  • typing text uses existing coloring until refreshed resulting in more stable coloring
  • reimplemented some language definitions
  • Tools: if ${commit2} is used, 2 selected items are required (use a second tool without ${commit2} if it should be optional)

New in SmartGit 20.1.4 (Jul 29, 2020)

  • Fixed Bugs
  • Changes: is not cleaned up correctly if file is selected and repository is removed outside SmartGit
  • Compare, Conflict Solver:
  • Internal error applying last (non-empty) line to other side
  • Conflict Solver:
  • "compare.applyGitFilters" was not honored
  • Distributed Reviews:
  • Integrate Pull Request: squashing fails with Git error "You cannot combine --squash with --commit"
  • Files, Copy commands: internal error if invoked in bare repository
  • Format Patch default external tool: was only available for head commit (regression)
  • GitHub Enterprise/GitLab: client certificates without password couldn't be used
  • Log
  • Graph: Checkout offered to track even remote head branch, e.g. origin/HEAD
  • Refresh: after opening repository, background tasks (like continuing SVN clone) were not scheduled
  • Refresh: "File system loop encountered" as part of the node cache refreshing
  • Settings: bugtracker-settings.xml was not read on first start
  • SVN:
  • Possible problems when trying to resume a clone
  • Table control: with table.scrollToSelection=false setting a selection did not unselect previously selected files
  • Working Tree window: title was not showing open repository under certain conditions

New in SmartGit 20.1.3 (Jun 23, 2020)

  • New Features, Improvements:
  • File Log, Blame, Investigate: rename detection for searching the file origin was limited to commits with up to 500 additions/removals
  • Search for Repositories: added low-level property repositorySearch.autoSearchInDialog to disable the automatic search (useful for slow machines with hard drives)
  • Fixed Bugs:
  • could not be started with + sign in the path
  • BitBucket/others: Create Pull Request dialog contained duplicate target entries
  • Distributes Reviews:
  • Branches view: "Show Closed Pull Requests" had no effect
  • External Tools: even if 2 refs are required, the tool could be invoked on a single ref
  • Find Object, open repository: did not always select open repository
  • File compare: stderr/stdout redirection for external tools did not work
  • GitHub:
  • possible "404 not found" error for subsequent refresh after adding a comment
  • Log: possible out-of-memory error while refreshing comments
  • Log:
  • Files:
  • for file log, the filter pattern from the repository root log was initialized
  • Graph:
  • when filtered, checking out a commit may erroneously check out mapped local/remote branch, e.g. different commit
  • Linux: right-clicking set focus too late and hence showed an outdated context menu
  • Refresh:
  • possible endless loop in file system benchmarking code
  • Working Tree window: opening broken repository (without admin dir) broke subsequent refreshing and file monitoring until repository was closed and reopened
  • macOS:
  • table controls: right-clicking the table header to show the column menu did not work if scrolled
  • Windows:
  • cloning to path with lower-case drive letter caused core.worktree to be set resulting in a notification of SmartGit - workaround for a Git bug

New in SmartGit 20.2 Preview 2 (Jun 22, 2020)

  • New Features, Improvements:
  • Create Branch, Start Feature: options for configuring default prefix in .git/config
  • [smartgit "gui"]
  • prefixAddBranch = myBranchPrefix
  • prefixStartFeature = myFeaturePrefix
  • "Edit | Customize" (accelerators) was replaced by central customization of keyboard shortcuts in the preferences
  • External tools: use fresh environment variables (without any modifications of the SmartGit launcher)
  • GitHub: reworked authorization due to "Deprecating OAuth Authorization API"
  • Log:
  • Graph:
  • Filtering:
  • easier and more visible options, easier reset
  • faster for finding ID
  • improved layout performance
  • Files:
  • shows banner when performing a diff (2 selected commits) with option to swap both refs
  • for working tree and index tables, columns "Last Changed On" and "Size" were added
  • Changes view can auto-hide:
  • drag Changes view on top of the Graph view
  • selecting a file, the Changes view comes to front, unselecting the file, the Graph view comes to front
  • Refresh: improved performance
  • Search/Filter input fields: more visible RegEx option (some filter input field don't have it any more, because not needed)
  • Submodules:
  • Repositories: shows more human readable name for the Ref similar to how "git submodule" does
  • Subtree support:
  • "subtree merge" command
  • "subtree reset" command
  • "subtree split" command
  • Syntax coloring re-implemented based on ANTLR, because the previously used library was not supported any more
  • newly support "languages": ANTLR, bat/cmd files, CMake, InnoSetup, Kotlin, properties files, YAML
  • less popular were removed (but might be provided if there is demand and users provide test files)
  • macOS: use monospace-digit-font hint for system font, so e.g. date columns get aligned correctly
  • Windows: if Windows is configured to dark app theme, SmartGit's automatic theme will cause it to launch in dark theme, too
  • Fixed Bugs:
  • Commit message editor: caret was invisible if at line length guide position
  • GitHub: OAuth scopes were not properly set to access GitHub "workflows"
  • Log:
  • Changes:
  • possible out-of-memory error when accessing huge file
  • Comment display: foreground and background colors were not configurable in theme
  • LFS files were not deflated, despite of "smartgit.compare.applyGitFilters" being set
  • connector between both panes were not reliable cleared when unselecting file
  • Graph:
  • possible unnecessary crossings related to Low-Level Property "log.graph.preserveConnectorsUntilFork"
  • working tree node and history commands were disabled if head branch, but not "HEAD" was selected in Branches view
  • when opening the Log for a non-head branch focus is forced to the Graph after a while even if the filter input field already was focused
  • Move to Trash: improved performance for multiple files
  • Refresh:
  • possible false-positive "unchanged" state for files changed immediately after staging
  • Other Noteworthy Changes:
  • "Branch | Rebase | Abort" was removed because the more general "Branch | Abort" already covers it
  • Preferences, low-level properties page: initially shows only modified properties (for easier reset)
  • Windows: upgraded to Git 2.27

New in SmartGit 20.1.2 (May 7, 2020)

  • New Features, Improvements:
  • Commit template: set caret at the end of the first (valid) line (instead of the beginning)
  • Log, Graph view: set low-level property "log.graph.showMergeCommitsGray" to false to not avoid gray merge commits
  • Rebase Interactive, Investigate: don't stop after title when shortening message
  • Search/Filter: set low-level property "fileSearchOrFilter.matchInside" to false to match the file name start
  • Refresh: set low-level property "nodecache.reflogRoots.followSymlinks" to false to prevent possible "java.nio.file.FileSystemLoopException"
  • Fixed Bugs:
  • Blame: didn't distinguish between trailing line ending or not
  • Branches view: Del key did not invoke Delete command on focused remote
  • Commit: committing many files created multiple commits
  • Compare, Index Editor: did not keep posix file mode on save
  • Files view: "intent-to-add" files showed up as "modified"
  • Gravatar images: incorrectly sized when switching between display zoom level 100% <-> 200% on the same machine
  • JIRA integration (cloud instance): didn't re-ask for password in case of HTTP error 403
  • Linux: launcher script suggested to try SWT_GTK3=0 though GTK2 is not supported any more
  • Log:
  • Changes view: changes for "assume unchanged" files were not displayed (as in Working Tree window)
  • Commit view: missing primary "parent" link for merge commit when "Follow Only First Parent" is selected
  • Files view: internal error comparing Index with conflicts against commit
  • Graph view: signed commit symbol was not supported by macOS system font
  • window could be closed while a command was running
  • pressing Ctrl+Shift+3 if all files are staged, did not focus the right table in the Files view
  • Preferences, Colors tab: no editor colors were shown on macOS
  • Refresh:
  • internal error if core.excludesfile points to invalid path
  • internal error if HEAD points to non-local branch
  • possible internal error related to core.ignoreCase=true on case-sensitive file system (e.g. Linux)
  • removed but ignored, physically existing file showed up as untracked
  • Stage:
  • possible internal error for file names containing special characters
  • possible error "..System Volume Information"
  • Windows: possible error "the following file has local modifications"
  • SSH: using "System SSH" Git was not correctly configured for plink passing invalid arguments ("plink: unknown option "-o"")

New in SmartGit 20.1.1 (Mar 24, 2020)

  • Fixed Bugs:
  • Commit: internal error double-clicking entry in file completion popup
  • Clone: internal error if clone finishes after the repository had been removed while cloning
  • Several commands: internal errors for "unusual" file names
  • Log:
  • Files view (Linux): staging all files loses focus
  • Refresh: working tree node doesn't show up after switching back to modified repository
  • Other Noteworthy Changes:
  • Setup wizard: the Log vs. Working Tree option covers more changed options now
  • Updated Chinese translation

New in SmartGit 20.1 (Mar 19, 2020)

  • FIXED BUGS:
  • temp dir cleanup did not work reliable on shutdown
  • Windows installer: did not uninstall "Open in SmartGit" explorer context menus
  • Windows: tree control uses full row selection as on other platforms, because https://bugs.eclipse.org/bugs/show_bug.cgi?id=438479 seems to be fixed now
  • SVN:
  • Log, Graph: "SVN revision" column won't immediately show up after opening SVN repository (but only after first refresh once it's already open)

New in SmartGit 20.1 RC 3 (Mar 13, 2020)

  • New Features, Improvements:
  • Select JIRA Issue dialog: ability to copy key or summary
  • Add Worktree: tries to prevent putting working trees inside the repository structure
  • Fixed Bugs:
  • Add Submodule: possible screwed up layout on second page
  • Blame:
  • line selection may jump unexpectedly when browsing through commits
  • may show wrong "merged through" commit if there are different merge-paths from the commit to the main line
  • Branches: Pull (and Set Depth): possible internal error trying to invoke on remote of bare repository
  • Changes view: selecting large binary file can cause OOME by calculating hash
  • Ignore: ignored escaping backslash characters when writing ignore file
  • Log:
  • Graph: filtering for a single commit in large repository should not cache all commit data encountered
  • Open repository: when opening a repository that already is open in a minimized window, this window will be restored
  • Output: may show unexpected "[K..." prefix with recent Git versions
  • Refresh:
  • possible internal error related to untracked-missing rename detection
  • Removing missing repository might fail if the repository was open in another window
  • Repository search: repository in drive root had no useful name
  • Stage:
  • on repository on symlink root may remove files instead of adding them
  • Windows:
  • possible internal error related to case-only-changed files
  • with ignoreCase=false, missing files from case-change can't be staged
  • macOS: file completion in file or directory input fields fails on symlinks

New in SmartGit 20.1 RC 2 (Mar 4, 2020)

  • FIXED BUGS:
  • Log window:
  • Branches:
  • Compare with HEAD: should be disabled for the current branch
  • Working tree window:
  • Repositories: ahead/behind information (orange/green arrow) is not properly cached for non-favorite repositories
  • Windows: Stage: possible "System Volume Information" error for repositories located on drive root
  • SVN:
  • - Clone: logs FileSystemException when detecting symlink support on Windows

New in SmartGit 19.1.7 (Mar 2, 2020)

  • Fixed Bugs:
  • BitBucket Server: possible internal error when refreshing (related to moved repositories)
  • GitHub, Create Pull Request: fails if target repository name contains uppercase letters
  • Refresh:
  • Git-LFS lock file information may fail to parse due to new timestamp format
  • Git-LFS locks processing (for own locks) should be more tolerant in case of missing "owner"
  • corrupt yml settings files (e.g. containing 0x00 bytes) fail SmartGit to start
  • Investigate: showed DeepGit version in title

New in SmartGit 20.1 RC 1 (Feb 27, 2020)

  • New Features, Improvements:
  • Log, Graph: denote signed tags https://smartgit.userecho.com/communities/1/topics/181-
  • Interactive Rebase: if merge commits were detected in the commits that should be rebased, a warning is shown that they will be flattened (replaced by normal commits)
  • dark theme (Windows): lowered contrast of table header separators, text field borders and menu bar separator
  • (gr)avatar-cache: added low-level property avatar.cache to relocate it
  • Fixed Bugs:
  • Files view, Index table: states were incorrectly named in Working Tree and Log window
  • Refresh:
  • internal error if repository is located on drive root
  • after commands:
  • inefficient refreshing after performing an operation on a submodule
  • broken for submodules located on symlinks
  • Log, Graph: with "Follow Only First Parent" option, stash may not be aligned with its base commit but show up at the top of the graph
  • Tree control (macOS): depending on configured selection color white foreground on white background color https://bugs.eclipse.org/bugs/show_bug.cgi?id=558258
  • Conflict Solver: for unselected "Swap ours and theirs" option, left title should be "Rebase target ("ours")"
  • Changes view: unified scrollbar not always updates correctly when selecting a new file
  • .gitconfig: JGit-related lines like 'filesystem "Oracle Corporation|11.0.3-Syntevo|-2078966431"' were added to ~/.gitconfig, now to ~/.jgitconfig
  • Other Noteworthy Changes:
  • Pull (toolbar) operates on the opened repository ignoring the Branches selection:
  • added low-level property pull.honorRemoteSelection to enable honoring of remote selection in Branches view

New in SmartGit 19.1.6 (Jan 14, 2020)

  • Fixed Bugs:
  • Git-Flow, Integrate/Finish Feature: may unexpectedly skip commits to rebase
  • Log:
  • possible internal error for files obstructured by submodules
  • Log/Working tree window:
  • memory leak when closing
  • Log Graph/Journal:
  • internal error if a user name contained r
  • Journal: changing Auxiliary Ref in submodule did not refresh automatically
  • opening bare repository may fail due to missing "logs" directory
  • Ignore:
  • internal error trying to ignore the root directory; resolved by only allowing directories containing only untracked (or ignored) files
  • Refresh:
  • - for notification "Repository ... has a locked index" the "Delete" button may not work if .git/index.lock has been removed in the meanwhile
  • GUI:
  • text input field, e.g. filters: Ctrl+Z triggered accelerator instead of accepting as undo for text field
  • internal error setting log level to FINE

New in SmartGit 20.1 Preview 6 (Dec 13, 2019)

  • FIXED BUGS:
  • Log:
  • Cherry-picking multiple commits might change order of commits, sometimes causing the operation to fail, sometimes not
  • Other Noteworthy Changes:
  • updates of the SmartGit installation directory also should be allowed on macOS 10.15

New in SmartGit 19.1.5 (Dec 5, 2019)

  • New Features, Improvements:
  • GUI:
  • Table control: added low-level property table.scrollToSelection to prevent scrolling to selection, e.g. after toggling the sort status
  • Fixed Bugs:
  • Compare:
  • Resizing the window did not redraw the "Long lines" view causing garbage to be shown there
  • Forgots some options when using "Remember as Default"
  • Log:
  • Opening a freshly cloned shallow repository failed if a commit listed in .git/shallow was not present in the repository
  • GitHub: query was not tolerant in case of missing parent repositories
  • Rebasing commands (reordering, changing messages, ...): had problems with spaces in paths
  • Opening a missing repository in 2 windows could result in an internal error when confirming the removal
  • Possible internal error related to bare repositories
  • Index Editor: did not show a warning if a file could not be saved, e.g. because it was locked by another application
  • I18n: variable text parts could be replaced by "1", "2", ...
  • Internal error saving passwords
  • For commercial users with outdated licenses the evaluation did not work
  • Applying changes from default settings (startup.settingsToReplaceFromDefaults) did not work when upgrading from old XML files

New in SmartGit 19.1.4 (Oct 2, 2019)

  • New Features, Improvements:
  • Branches view: ability to copy stash name
  • Changes view: include commit ID for "Could not find submodule commit" message
  • Hosting providers: added low-level property
  • smartgit.hostingProvider.skipCheckForConfigurations to prevent, e.g. notifications "Bitbucket Server integration is not yet configured"
  • Added low-level property smartgit.pull.skipCheckForExternalCredentialsHelper to prevent notification "External Credentials Helper detected"
  • Fixed Bugs
  • Log:
  • Files: toggling Show Directories did not update the GUI immediately
  • Working Tree refresh: possible internal error related to core.ignoreCase=true
  • Clicking sourcetree:// URLs in Bitbucket did not open clone wizard any more
  • SVN:
  • Submodule initialization was not possible if smartgit.svn.scanSubmodulesForNonSvnParents=true
  • Refresh: uninitialized submodules don't show up if smartgit.svn.scanSubmodulesForNonSvnParents=true
  • UI:
  • Ctrl+Shift+1/2/... did not work if commit message field in Commit/Message view
  • Was focused
  • Graph/Journal view: focus rect not drawn correctly
  • Windows launchers were monitor-dpi-aware by accident
  • Other Noteworthy Changes
  • Dropped "Merge Directly To" 3rd-party tool due to a couple of problems with changed low-level Git API

New in SmartGit 19.2 Preview 1 (Sep 30, 2019)

  • New Features, Improvements:
  • Branches view: add option to show sections (groups) first https://smartgit.userecho.com/communities/1/topics/996-
  • Dark theme: Log graph shows refs also in dark mode
  • File filter: support searching by word parts https://smartgit.userecho.com/communities/1/topics/993-
  • Filter input fields: removed limit of up to 10 stored filters http://smartgit.userecho.com/communities/1/topics/1005-
  • Interactive Rebase: preserves empty commits
  • Log, Graph:
  • Filtering:
  • Optimized redundant merges
  • Branches and tags only are shown if they point at the found commit
  • Output view:
  • For long outputs first lines are discarded unless they are warning
  • Repositories view:
  • Move group to another group
  • Performance/memory:
  • Compare/Changes view: several performance improvements
  • Reduced memory consumption for loaded repositories (several changes)
  • Refresh:
  • Added low-level property core.tags.loadDetails to disable possible expensive access to object database
  • Log, Graph:
  • Faster initial loading
  • Faster refreshing
  • Squash Commits: added low-level property squash.selectOldestDate to preselect oldest date
  • Stage/Unstage: optionally stage/unstage all files recursively
  • UI:
  • Larger buttons:
  • Commit view: Commit
  • Graph view: Continue, Abort, ...
  • Worktree: added 'git worktree remove'
  • Fixed Bugs:
  • Bisect: did not show command output
  • Changes view: for missing submodule commit, commit ID could not be displayed
  • Push: duplicated displayed warnings after command execution
  • Log:
  • Graph: filter input field was not considered as belonging to view
  • Refresh: fake "missing" files should not be reported when using "core.ignoreCase=true" on a case-sensitive file system

New in SmartGit 19.1.3 (Sep 11, 2019)

  • Fixed Bugs:
  • Log, Graph:
  • Enter did not the same as double-click
  • Focus rect is not drawn any more
  • Compare or others: possible internal error applying change
  • Output: for Git >= 2.23, progress output like "Compressing objects:" is not properly-recognized anymore
  • Stash On Demand: should not fail with "Your local changes have been stashed away, but could not be reapplied." if stashing untracked files is disabled
  • Windows: if some special environment variables were set, e.g. JAVA_TOOL_OPTIONS, the launchers did not recognize the bundled JRE and possibly tried to use an outdated one from the system causing an internal error

New in SmartGit 19.1.2 (Sep 6, 2019)

  • Fixed Bugs:
  • Git-Flow:
  • Finish Release: Tag Message is not set to tag
  • Finish Feature/Hotfix/Release: should not remeove remote branch if "push" option is deselected
  • Log:
  • Commit view: temporary inconsistency might caused assertion
  • Graph:
  • Could become inconsistend between selected refs and shown commits
  • When merging a tag (by right-clicking it), commit or other branch name on commit was used instead of the tag
  • Adding/removing tag from local branch did not properly update local/remote state (orange vs. black nodes)
  • Rebasing state: "done" labels might be in wrong order
  • Repository state banner text could get focus with blinking caret, e.g. after having clicked (Rebase) Continue
  • Internal error trying to open bare repository containing .git admin directory
  • Window | Files tried to focus Directories view, even if hidden
  • Pull: possible internal error if repository config could not be read
  • Refresh: - reduced short-term memory usage
  • Stash on Demand: asked to stash untracked files even if option to stash untracked files was unselected
  • SVN:
  • Cherry Picking a not yet pushed commit (= a commit without a revision) fails with "Aborting commit due to empty commit message "forgot" https credentials
  • GUI:
  • Possible internal error expanding a tree control

New in SmartGit 19.1.1 (Aug 12, 2019)

  • Fixed Bugs:
  • Commit, Discard: invoking Compare for renamed file does not show source file,
  • but only empty file
  • Git-Flow:
  • Integrate did not honor custom base (if configured)
  • Start Hotfix fails if an unrelated version-tag is present
  • Start Release may suggest invalid (already existing) release name
  • Tools: tools with only ${dirSelect} did not show up in menu
  • Startup: under certain conditions always asks for confirmation to send bug
  • traces
  • Linux:
  • smartgit.sh suggested to add jre= line if no JRE was found, but ignored
  • this line
  • https authentication failed if SmartGit path contained spaces

New in SmartGit 19.1 (Aug 8, 2019)

  • GitLab: Open-link did not work for repositories in subgroups
  • SVN:
  • Cloning created 2 smartgit-*.tmp files in repository
  • Duplicate tooltip in the status bar while cloning
  • GUI:
  • Docking: unmaximizing a view with double click could close another view
  • If its (X) button was positioned at the same location

New in SmartGit 19.1 RC 4 (Aug 2, 2019)

  • Fixed Bugs:
  • Log:
  • Files view (Working Tree): obsolete rename information may remain after
  • partial refresh of working tree
  • Refresh: when opening mutliple repositories at once with "Show working
  • tree node permanently" selected, local modifications didn't show until
  • repository was selected
  • Repositories: certain commands didn't work on multi-selection of
  • submodules (but worked on multi-selection of normal repositories)
  • Preferences: internal error exporting external tools
  • Themes: - some dark theme fixes
  • Tools: invalid .gitconfig empties after tool invocation
  • handle leak after invocation of external processes
  • Mercurial:
  • Log windows missed Window | Branches menu item
  • SVN: Push was broken
  • Windows:
  • assertion in JGit detecting the file system timestamp resolution
  • possible infinite hang when trying to open repository from network share
  • Other Noteworthy Changes:
  • GitHub API server fingerprint updated
  • show info about obsolete system property "smartgit.core.push.recurseSubmodulesCheck"

New in SmartGit 19.1 RC 2 (Jul 4, 2019)

  • New Features, Improvements
  • Use Message for Commit:
  • added to the Journal view of the Working Tree window
  • allowed for non-root logs
  • Preferences, User Interface: Chinese users will now be able to switch to a
  • Chinese interface
  • Fixed Bugs:
  • Commit: if in merging state and no staged file existed, all untracked files
  • were added, even though "Add untracked files" was unselected
  • Graph:
  • Ref Delete/Rename: was possible even for exotic refs like svn/attic
  • possible internal layouting-related error with low-level property
  • log.graph.preserveConnectorsUntilFor set
  • Refresh: possible dead-lock
  • Refresh:
  • various problems (like "missing object") and possible crashes if
  • repository contains invalid ref (pointing to a valid SHA not referencing
  • a commit)
  • possible internal error if repository was in rebasing state
  • Compare and others: word-based cursor movement moved too far

New in SmartGit 19.1 RC1 (Jun 26, 2019)

  • New Features, Improvements:
  • Branches view: added low-level property branches.delete.preselectDeleteFromRemote to make it easier to delete remote branches
  • Compare, Go to next/previous change: tries to scroll full inner-line change block into view
  • Log, Graph, Use Message for Commit: focuses Commit view
  • Search for Repositories: remembers unselected repositories
  • UTF-8 encoded file detection: added low-level properties for disabling (text.detectUtf8WithoutBOM) and configuring the maximum character count to check (text.detectUtf8WithoutBOM.maxChars) Window | Maximize View: renames to Restore Maximized View in maximized state
  • Fixed Bugs:
  • LFS, Track dialog: on Windows a file FOO.JPG was rejected for a pattern *.jpg
  • though core.ignorecase was set to true

New in SmartGit 19.1 Preview 8 (Jun 19, 2019)

  • New Features, Improvements:
  • Log:
  • Checkout: right-clicking a remote branch should honor clicked branch for subsequent Check Out target dialog
  • Commit view: when filtered, "parents" should denote commit parents instead of matching virtual parent nodes
  • Fetch: added low-level property fetch.fetchOnlyCurrentRemote (current remote
  • means remote from the tracked branch of the current branch)
  • Rebase: uses --rebase-merges instead of --preserve-merges for Git 2.21+
  • Repositories view: show icon for groups, so the text of the same level is
  • aligned
  • Memory consumption reduced by ~10% for large working trees
  • Fixed Bugs:
  • Log window:
  • Branches view: toggling Git-Flow branches (e.g. feature branches) in
  • remote category did not work
  • Graph view:
  • Checkout:
  • Checking out remote branch resulted in detached HEAD (contrary to what is selected in the dialog)
  • Possible internal error invoking Checkout on diverged remote branch
  • Refresh: possible internal error after submodule vanished, e.g. when switching branches
  • Working Tree window:
  • Commit: internal error invoking commit on files from different repositories
  • Branches view: invoking Fetch on a selected remote should only fetch this remote, not from all
  • Clone: Fetch Only a specific branch was broken
  • Passwords (JIRA and hosting provider): might not have been stored
  • Revert: for Revert & Commit the custom template from low-level property was ignored in case of conflicts
  • Split Commit: Commit view was cleared after 1st commit
  • Mercurial:
  • Journal: HEAD commit should be denoted in bold
  • Linux: if JAVA_HOME was set to an older JRE, SmartGit did not start with a NoSuchMethodError
  • MacOS: possible internal error for shell-toolbar
  • Other Noteworthy Changes:
  • License agreement: made commercial use details more clear

New in SmartGit 18.2.9 (Jun 19, 2019)

  • Fixed Bugs:
  • Git-Flow, Finish Hotfix: when using external Git-Flow no "version tag" is
  • created
  • Other Noteworthy Changes:
  • Support for new BitBucket API

New in SmartGit 19.1 Preview 7 (Jun 3, 2019)

  • New Features, Improvements:
  • Branches view:
  • Copy URL for Remotes
  • Commit view:
  • Now also supports merge, cherry-pick, ... messages, commit.message template
  • Optionally stage all files without confirmation
  • Git-Flow:
  • Finish Feature: merge should be non-fast-forward by default
  • Start Support: allow to specify base commit for support branch
  • GitHub (and others), Create Pull Request:
  • Reasonable target default
  • Use information from latest commit as default title
  • Works on Graph selection, too (not just branch selection)
  • Bitbucket Server: low-level property "stash.https.fingerprint" to specify default server fingerprint
  • Log/Journal: show configured fixup-prefix in light color
  • Log:
  • Graph view:
  • Inlined ref sub menu
  • Ref context menu: merge also works on ref
  • Files view:
  • Directories tree: offer external directory tools
  • Rename file: also can rename untracked file
  • Working Tree window:
  • Commit view:
  • Added Select from Log
  • Fixed Bugs:
  • Git-Flow:
  • Start Support: did not honor selected base branch
  • Prune Worktree:
  • Show error message in case of error
  • Commit:
  • Commit.message template not honored anymore
  • Log:
  • Graph view: scrollbar had brown background on macOS 10.14 with dark theme
  • Checkout: can't create new branch for multiple remote branches on selected commit
  • Cherry-pick (without commit): subsequent Commit dialog may suggest wrong commit message
  • Possible internal error opening GitHub/Bitbucket/GitLab repository for which no hosting provider is configured
  • Refresh: possible internal error
  • Dark theme (Win10): Changes view may get visible (dark) scrollbars, e.g. after changing perspectives
  • Other Noteworthy Changes:
  • Commit and others, Select Message from Log: replaced "Fixup!"-prefix checkbox with configurable prefix with low-level property log.useCommitMessage.prefix
  • Rebase Interactive: disabled auto-squash of fixup! commits, because it offers 3 options to do that (to top/newest commit, neighbor commits, to bottom/ oldest commit)
  • Stash selection: show information that the index always is stashed
  • Log: renamed views "Commits" -> "Graph", "Details" -> "Commit"
  • SSH: shows better error message in case of ECDSA keys
  • Upgraded to Java 11.0.3

New in SmartGit 18.2.8 (May 21, 2019)

  • New Features, Improvements:
  • SSH: support user names wrapped in single-quotes, e.g.
  • ssh://'foo@bar'@server:1234/path
  • Fixed Bugs:
  • Linux launcher: only enforce GTK_IM_MODULE=ibus if it was set to xim
  • macOS: an update of the installation bundle caused a directory to remain
  • Other Noteworthy Changes:
  • increased version of bundled Git to 2.21.0

New in SmartGit 19.1 Preview 6 (May 15, 2019)

  • New Features, Improvements:
  • Clone:
  • Preselect default branch if "Fetch all Heads and Tags" is unselected
  • The 1st previous URLs are shown in recently used order, the remainding ones are sorted by name for easier reading
  • Details/Commit Message view:
  • Apply more features of the classic Commit dialog:
  • If amend is selected, check for modifying pushed commits
  • Checks for configured name/email
  • Ability to select JIRA issue as message
  • Commit single change without confirmation
  • File name completion: support for renamed files
  • Log:
  • Edit Commit Message now also works if Index or Working Tree is selected
  • Commits/Graph:
  • Context menu:
  • Use submenu to group all commands for the clicked ref
  • Removed general Push, because it did not work on the selected commit
  • Added Fixup command that takes the commit message and selects the working tree
  • If Index or Working Tree were clicked, show Commit, Stage/Unstage
  • Filtering: performance improvements for subsequent filtering by cached commit data
  • More compact options ("hamburger") menu
  • Git-Flow:
  • Toolbar button: Integrate should also be default if we are only behind origin/develop, but not local develop
  • Modifying or Splitting Commit: Continue button opens Commit dialog for local changes
  • Log/Journal: Squash Commit did not ignore "!fixup" prefix
  • Bitbucket/GitHub/GitLab: option to open pull request in browser
  • File Compare, Conflict Solver:
  • Added _ as word character
  • External tools: made non-case-sensitive on Windows
  • Output view: added low-level property "output.view.maxDisplayedLines"
  • GUI:
  • Themes: by default switch between light and dark default themes, especially on macOS 10.14 and Linux
  • Fixed Bugs:
  • Bitbucket/GitHub/GitLab:
  • Integration may not work properly if remote URL
  • Re-fetching pull request might not work
  • Re-fetching "locally outdated" pull request did nto clear "locally outdated" marker contained port number
  • Clone dialog: showed duplicate URLs
  • Commit: possible OOME for large commits (adds)
  • Details/Commit Message view:
  • Could not commit into empty repository
  • Could not commit submodule change
  • Only untracked files were not detected as committable ("nothing to commit")
  • Find Action: wrong priority handling
  • Git-Flow: Finish should be default if feature is ahead of develop
  • GitLab: Add Comment (Changes view) may fail because it tries to create comment in wrong repository
  • Split Commit: false-positive "The splitting of commit ... is still in progress" warning when having only untracked files in the working tree
  • Log:
  • Branches view:
  • Bitbucket Server: misleading tooltip "Hosting provider is not configured for the current repository" for refresh button
  • Changes view:
  • Did not show expected vs. real EOL
  • Could not show Index content if repository was empty (invalid HEAD)
  • Cloning repository did not show up as open (bold)
  • Commits:
  • Clicking up-link arrow to Index (on pending merge commit) did not work
  • - "hand" cursor over links did not show up anymore
  • Working Tree and Index node always should be next to each other
  • Gap/flickering updating the "states" panel
  • Stashes should show up completely, even if "Show Only First Parents" is selected
  • Repositories:
  • Possible internal error opening multiple repositories in quick series
  • SVN "incomplete" state not detected (showing "missing" instead)
  • GitHub: possible empty "Reply" menu when right-clicking comment
  • File/subdir log did not remember layout
  • Open, missing repository: each window activation caused a new error dialog to pop up
  • Working Tree window:
  • Hosting providers: incoming pull requests may not be denoted if
  • Distributed Reviews is enabled for the repository, too
  • GUI:
  • Feature Integrate/Finish: "Merge" became pre-selected where "Rebase" should be
  • - "Default for dark system" theme was outdated
  • Other Noteworthy Changes:
  • Memory limitation for helper processes

New in SmartGit 19.1 Preview 5 (Apr 25, 2019)

  • New Features, Improvements:
  • Git-Flow: support for AVH edition 1.12.2
  • support for custom base branch
  • smart "Integrate Develop" for sub-features with diverged base branches
  • default to "Integrate" if feature lags behind parent (develop)
  • log safe diverged states only as "info" (instead of "warning") to the
  • Output view
  • Garbage Collector: re-added option for expire-reflogs-now with additional
  • confirmation because it will delete stashes, too
  • Edit Last Commit Message has been removed, because Edit Commit Message
  • already supports it (even for merge commits)
  • Log:
  • Commits:
  • show banner for current rebasing/merging/cherry-pick/... state with
  • state-specific commands what to do
  • Abort toolbar button has been removed
  • Commit toolbar button does not change to "Continue" any more
  • (but still can be used to continue a rebase)
  • Details: unified Commit Message view into Details view (if index or
  • working tree nodes are selected, the commit message can be entered)
  • with Amend checkbox and Commit button to commit without the dialog
  • commit button works on index
  • if no file was staged, optionally all local files get staged upon
  • request (git add -- .)
  • Working Tree window:
  • Commit Message view: with Commit button (see Log/Details above)
  • Stash Apply: now also works in rebasing state
  • GUI:
  • commands that don't influence index or working tree are moved from the
  • Local to the Branch menu (Bisect, Edit Commit Message, Edit Author,
  • Squash Commits
  • Repositories: added Add Group to context menu of group
  • external tools (Linux): detect more terminal applications
  • Fixed Bugs:
  • Log:
  • Commits:
  • when rebasing only a slice of commits, "rebase plan" may show too
  • many false-positive "done" commits
  • possible internal error trying to open repository in rebasing state
  • certain degenerated rebasing states don't show up
  • F2 did not invoke Edit Message
  • Details:
  • Gerrit change IDs were detected as possible commit ID
  • Split Commit: wrong message is suggested after having entered a different
  • message
  • Linux: scrolling related hard crash
  • https://bugs.eclipse.org/bugs/show_bug.cgi?id=546274
  • GUI:
  • Log:
  • Commits: for a file log, the context menu contains always disabled
  • commands
  • toolbar: changing "Show text below icon" did not relayout correctly
  • Rebase Interactive: if aborted, don't show "succeeded" message

New in SmartGit 18.2.7 (Apr 10, 2019)

  • New Features, Improvements:
  • Git:
  • Log: improved error message for "Inconsistency between (cached) commit
  • data detected"
  • https: added low-level property connection.https.trustedFingerprints to work
  • around certificate problems with self-signed certificates and proxies
  • SSH: authentication-related errors are reported now on re-occurring
  • credentials dialog
  • Fixed Bugs:
  • Git:
  • Log:
  • Refresh: false-positive "repository has an error-prone admin area
  • configuration" message for submodules in worktrees
  • setting smartgit.log.hostingProviderIntegrationEnabled=true should not
  • disable Distributed Review add-on
  • Repositories: opening a repository opened already in another window
  • (working tree or log) causes internal error if renamed or deleted on disk
  • (missing repository)
  • Repository Settings on missing repository might cause internal error
  • Working Tree:
  • Merge and other commands with embedded log: branch selection dialog
  • should not hide remote, tracked branches
  • Check for New Version: broken if "Automatically download and install updates"
  • has been selected in the preferences
  • Docking: maximizing and restoring one view by double clicking its title
  • restores the wrong (too old) size

New in SmartGit 19.1 Preview 3 (Apr 1, 2019)

  • Git:
  • DeepGit:
  • added "Open SmartGit Log" and "Open SmartGit Root Log" to Navigation
  • view
  • Discard: if > 1 file is discarded, show a second confirmation
  • JIRA/others: detect HTTP->HTTPS redirects and show a reasonable error
  • Log:
  • Branches:
  • Reveal: always asks for local/tracked branch if tracked branches
  • are not shown
  • Commits:
  • optionally show only first parents; expandable on-demand
  • sorting options for
  • time,
  • primary parents first,
  • merge parents first
  • for Branch and Mergable coloring text of "non-matching" nodes is
  • shown gray as for merge commits
  • Commits and Files: saves and restore states when switching between
  • multiple open repositories
  • Files:
  • Directories:
  • Copy Name/Path/Relative Path: now also work for a commit
  • selection
  • empty untracked directories are only shown if "Show Unchanged" and
  • "Show Untracked" is selected
  • opening: immediate loading feedback even for huge repositories
  • closing checks for running command as working tree window does
  • Log Graph/Journal: shows email addresses in tooltip
  • https://smartgit.userecho.com/communities/1/topics/932-
  • Modify or Split Commit work flow improved:
  • the Continue option only is shown for no local changes (making
  • creating commits more explicit)
  • no second commit is tried to be applied
  • warns if the commits are not diff-equal to the original commit (e.g.
  • if something has removed intentionally or forgotten); optionally put
  • remainder to the index
  • for each commit operation the original commit's message is suggested
  • Rebase Interactive, Modify or Split: warn if trying to modify pushed
  • history
  • Refresh: shows warning for repositories with many unpacked refs
  • GitHub: option to create draft pull requests
  • Changes view: Edit in Index Editor: is now disabled if inapplicable
  • Output view and dialog:
  • highlight links https://smartgit.userecho.com/communities/1/topics/336-
  • default settings: if smartgit.startup.settingsToReplaceFromDefaults is
  • configured, default yml files are processed specially:
  • a leading '-' for the key will delete this key from the settings file
  • for lists:
  • list items with the key-value "__merge__: delete" will be deleted
  • from the list
  • other list items from the default yml file are prepended to the list
  • only if the list does not yet contain such entries (only the keys
  • from the default list are used for the comparison)
  • UI:
  • tables: low-level property ui.table.sortByMultipleColumns to disable
  • sorting by multiple columns
  • Repositories view: low-level property repositories.sortFavoritesFirst to
  • disable moving favorite repositories before groups
  • Find Command: full menu item name has higher priority now than "words"
  • Fixed Bugs:
  • Git:
  • Blame/Investigate: when invoking "Open Log" with "Existing Window" in
  • file logs, the commit is not properly revealed
  • Log:
  • opening missing repository showed duplicate error dialogs
  • macOS: blurry graph on HiDPI screens
  • Preferences:
  • Hosting Providers: possible internal error
  • Repositories:
  • possible internal error invoking Copy ... on invalid repository
  • themes: graph.merge.text was not honored
  • Other Noteworthy Changes:
  • Windows bundles: use JRE 11
  • repositories-cache.yml has been replaced with a binary file repository-cache
  • (no need to be editable)

New in SmartGit 18.2.6 (Feb 25, 2019)

  • New Features, Improvements:
  • Git:
  • Fetch (background): continues with next submodules if one failed
  • Git-Flow: added low-level property gitflow.integrate.shortMergeMessage
  • Journal: added low-level property journal.defaultAuxiliaryRef
  • Log:
  • Repositories: disallow to delete submodules
  • Fixed Bugs:
  • Commit: error "Cannot read file .../.gitbugtraq" if content is invalid
  • Log:
  • Details: unexpected ID detection inside words
  • Distributed Reviews: trying to reveal comment failed with "Comment ... could not be revealed"
  • File log: Window | Repositories caused internal error
  • mergable coloring used hard-to-see color for anchor in dark theme
  • Refresh:
  • possible internal error have a large amount of renamed files
  • low-level property "log.wt.refreshOpenButUnselectedModels did not work on nested roots
  • Working Tree:
  • Show Changes: Compare with Each Other did not work for files from different repositories
  • delete on submodule did not work anymore
  • startup: command line parameter "--investigate" was broken
  • unmodified SVN submodules in non-SVN parent repositories showed up if
  • "Show Unchanged Files" was unselected
  • JIRA/Bitbucket Server/GitLab: problems when trying to access servers which
  • only support a limited set of ciphers (elliptic curves); installation upgrade
  • is required!
  • Windows bundles: fixed outdated readme.txt

New in SmartGit 18.2.5 (Jan 30, 2019)

  • New Features, Improvements:
  • Git:
  • Gerrit added low-level property gerrit.checkCommitMsgHookContent
  • to avoid false-positive Gerrit detection
  • Log
  • Branches, Checkout added low-level property
  • log.checkout.forceSelectionOfBranchAnchor
  • Linux startup script
  • easier switching back to GTK2
  • Fixed Bugs:
  • Git:
  • Commit Amend-option was disabled for merge
  • Log:
  • Commits view revealing HEAD should always reveal HEAD and not
  • stay at working tree node (e.g. double-clicking from Journal)
  • Refresh
  • log.wt.refreshOpenButUnselectedModels broke refresh of
  • commits
  • breaks in case of invalid Bisect configuration (missing
  • "start" branch)
  • GUI:
  • Customize Accelerators dialog internal error if a filtered-out
  • accelerator is cleared by setting another
  • Compare/Merge, Apply Selection possible internal error if all was
  • selected

New in SmartGit 18.2.4 (Jan 16, 2019)

  • New Features, Improvements
  • Git:
  • Log:
  • Details view: added low-level property
  • Log.details.onlyShowActualCommitRefsWhenFiltered
  • Hg:
  • Support for Mercurial 4.8.*
  • Fixed Bugs:
  • Git:
  • Log:
  • Commits view:
  • Reordering commits did not preserve selection
  • Rebase/cherry-pick by drag & drop was broken
  • When filtering, "actually on commit"-marker for refs (brighter box) was not properly evaluated
  • Branches view:
  • Reveal after Checkout did not work for behind branch with
  • "Just Checkout" option
  • Checking out a branch should not reset a manually changed
  • Selection
  • External tools: incorrect parameter "--defaultsVersion" (instead
  • Of "--version") for "Show Git Version" tool (regression)
  • Working Tree Window, Files view context menu: LFS submenu might
  • Have been empty (if LFS was not yet installed)
  • MacOS: warning about default osxkeychain credential helper
  • Hg:
  • Possible performance problems with many draft commits in a
  • Repository with many merges
  • Startup: possible internal error when specifying invalid value for
  • Low-level property ui.verboseDate.weekdayFormat
  • GUI:
  • Changes view: scrolling with mouse-wheel over connector selected
  • Next tab (if there were multiple tabs)
  • Customize accelerators: did not warn about duplicate accelerators
  • If the commands where invisible because of filtering

New in SmartGit 18.2.3 (Dec 21, 2018)

  • New Features, Improvements:
  • Git:
  • Log:
  • Added low-level property log.dragAndDrop.offerAdvancedOperationsForDropsOntoAncestors to allow drag and drop for advanced rebase and cherry-pick operations
  • Open File Log reuses Branches view selection from repository log
  • Repositories view:
  • Select the current repository only if another repository or group was selected before (but, e.g., no subdirectory)
  • Fixed Bugs:
  • Compare, Apply Selection: internal error applying change from an inserted block
  • Git:
  • Log:
  • Git-Flow Light: for various command dialogs "Fetch" options were disabled
  • Pull: "Update existing and fetch new tags" did not work for Git >= 2.20
  • Refresh: obsolete modified working tree overlaps new commit for a short time, then vanishes
  • Working Tree window:
  • Changes were not reported gradually anymore
  • GUI:
  • Several views: tab order cycled between table and search input field
  • Find Command, Find Object: shortcuts were swapped

New in SmartGit 18.2.2 (Dec 17, 2018)

  • New Features:
  • Repositories: added low-level property log.wt.refreshOpenButUnselectedModels
  • To update the repository state of open, but not currently
  • Selected repositories
  • Pull with rebase, merge commit: added low-level property
  • Pull.rebase.mergeCommit.mergeOrRebase to avoid merge-or-rebase dialog
  • Fixed Bugs:
  • Changes:
  • Index content might not have been displayed if file was
  • Case-changed in working tree
  • Staging hunk for case-changed file did not work
  • Commits:
  • Filter broke after changing low-level property
  • Log.graph.graphicalFiltering in the preferences
  • Switching branches lost Working Tree/Index selection
  • File/Subdir log did not remember layout
  • Repositories: state got lost when opening multiple repositories
  • At once and having "Show Working Tree & Index Permanently"
  • Selected
  • File Compare: forgot about BOM

New in SmartGit 18.2.1 (Dec 6, 2018)

  • Git:
  • Added low-level property log.graph.workingTreeAutoSelectionForConflicts to disable auto-selection of the working tree node if conflicts were detected
  • GUI:
  • Added low-level property ui.fonts.useDefaultAsInfo to make the info font the same as the default font (instead of a tinier, derived one)
  • Fixed Bugs:
  • Clone listed only own repositories, but should have listed all with read-access ("member" role)
  • GitHub/GitLab/BitBucket integration: internal error trying to merge on server
  • Log - resettings filter should not auto-select Working Tree or Index node
  • Repositories - could not invoke Pull/Push commands on group
  • Preferences:
  • Proxy port was not remembered after switching off the proxy temporarily
  • SSH
  • Some special SSH server setups caused an error "ClassNotFound:
  • Org.ietf.jgss.GSSException" to be raised => these users should force an installation update from the About dialog using the button right beside the version text field
  • GUI
  • Update check: multiple "The upgrade to version x is not covered by your license" notifications showed up

New in SmartGit 18.2 (Dec 3, 2018)

  • Fixed Bugs:
  • Git
  • Log
  • Branches view: Ctrl+C did not copy ref name
  • Changes view (Windows): old file content does not show up for
  • case-changed files
  • Push to Gerrit: should be available in case of multiple Gerrit remotes (if sill unique)

New in SmartGit 18.2 RC3 (Nov 27, 2018)

  • New Features, Improvements
  • External tools:
  • Fixed Bugs:
  • Git:
  • Log:
  • - Changes view: use "Stage Hunk", "Stage Line" action names as
  • in Working Tree window
  • GUI:
  • Windows: message dialog buttons might move to the right if Windows
  • triggered a relayout, e.g. after showing the lock screen
  • My-words.dic was not copied from previous version settings directory
  • Other Noteworthy Changes:
  • Not just traces of Java crashes are sent, but also traces for native
  • SmartGit crashes (trace = code location where error occured)

New in SmartGit 18.2 RC2 (Nov 21, 2018)

  • New Features, Improvements:
  • Git:
  • Log:
  • Commits view: context menu contained commands to drop or rename a selected stash, but not to apply
  • Notification for switching from Working Tree to Log window as main window
  • Possible errors after changing shallow commits
  • Log, Journal:
  • Added low-level properties log.graph.author.maxLength and log.graph.author.truncateLength to limit excessively long author names
  • Fixed Bugs:
  • Git:
  • Commit: switching between "Staged Changes" and "Local Changes" in the dialog did not update the file count label
  • Company installation, portable bundle: files from the "default" directory were not copied

New in SmartGit 18.2 Preview 11 (Nov 9, 2018)

  • New Features, Improvements:
  • Bitbucket: newly created tokens will completely use v2, for older
  • Git
  • Branches view: more compact pull request node titles
  • Commit: if low-level property commit.message.keepFile is set to
  • true, temporary commit-message files will not be deleted after the
  • command execution
  • Edit Last Commit Message: optimized command and made working for
  • empty commits, too
  • Fixed Bugs:
  • Git:
  • Log:
  • hosting provider integrations don't work reliably when having
  • multiple repositories open
  • Repositories view: internal error trying to close group that
  • was in the progress of getting opened
  • Repositories view: possible internal error deleting nested groups
  • SSH: failed if git property: protocol.version=2 was set
  • Updater: failed if (even ignored) files vanished during the creation
  • of the new directory structure
  • Other Noteworthy Changes:
  • upgraded to JRE 11 (LTS), because JRE 1.8 will be out of support since
  • January 2019
  • no support any more for 32-bit systems (because of Java and SWT not
  • supporting it and more)

New in SmartGit 18.2 Preview 10 (Nov 6, 2018)

  • Git:
  • Branches: performance improvements for many local tracking branches
  • Compare/Changes: added low-level property "compare.applyGitFilters"
  • to also view, e.g. git-crypt file contents
  • Interactive Rebase: indicate equally named (autosquashable) commits
  • Log:
  • Commits
  • added low-level property
  • "log.commits.preserveSelectedCommitsAfterResettingFilter"
  • temporary "Reveal Working Tree" is now reset immediately
  • once working tree became modified
  • filtering: performance improvements, especially for IDs
  • refresh
  • performance improvements after commit-related commands
  • performance improvements related to hosting providers
  • GUI:
  • for too large tooltips, show the first 3 lines by default

New in SmartGit 18.2 Preview 9 (Oct 19, 2018)

  • New Features, Improvements:
  • Git:
  • Branches
  • Delete: disallow deleting the current branch unless the low-
  • level property "branch.delete.allowToDeleteCurrentBranch" is
  • set to true
  • LFS: offer LFS commands only if Git-LFS is enabled for the
  • repository
  • Log
  • Branches
  • Checkout will reveal the checked out commit (new HEAD)
  • Pull, Sync: warn about an installed credential helper using a
  • notification
  • Mercurial/Hg:
  • support for Mercurial 4.7
  • show a notification about the end-of-life of Mercurial support
  • inside SmartGit at the end of 2019
  • GUI:
  • Changes/Compare:
  • improved select rows by using the line number column to include
  • the end line as well, so a single click selects the current line
  • Spell-checker: ability to trigger the suggestion popup with the
  • keyboard
  • Fixed Bugs:
  • Git:
  • Commit
  • possible error "Missing blob" trying to commit submodule
  • addition and removal
  • Investigate (DeepGit)
  • internal error trying to invoke on file in bare repository
  • Log
  • Commits graph: failed to show some commit connection (omitted
  • arrows)
  • Files
  • not updated properly quickly switching between commits
  • initialized SVN submodules showed up with "staged" icon
  • wrong icon for removed submodule
  • Refresh might fail when having submodule addition and removal
  • in working tree
  • Rebase
  • Continue complained about unresolved conflicts even if all
  • were already solved
  • Repositories
  • trying to open Hg repository might fail
  • Working Tree window
  • opening log for repository which is actually is a submodule
  • might fail
  • GUI:
  • Annotate: some accelerators did not work on macOS
  • Compare
  • if option "Ignore All Whitespaces" is selected, some blocks
  • were shown as completely modified instead of unchanged
  • Edit | Customize | Accelerators
  • if filter was used, filtered out menu items lost their
  • accelerators
  • Log
  • Repositories: F2 on closed repository did not allow to rename
  • macOS
  • Annotate/Blame: might show empty gutter context menu
  • light system independent theme: buttons did not show the
  • focused state any more
  • macOS 10.14 (mojave)
  • fixed some colors

New in SmartGit 18.2 Preview 8 (Oct 5, 2018)

  • New Features, Improvements:
  • Git:
  • Push to Gerrit: if topic is entered, add topic to master-option,
  • like "refs/for/master%topic=topic"
  • Fixed Bugs:
  • Git:
  • Gitignore/Git-config editor: is bright even with dark theme
  • Find Objects: possible internal error when entering a long search
  • string
  • Refresh/Log: rename detection limit should be 50% by default (as for
  • Git)
  • Hg:
  • internal error if no Git executable is configured
  • startup: possible internal error related to a bad settingsxml

New in SmartGit 18.2 Preview 7 (Sep 27, 2018)

  • New Features, Improvements:
  • Git:
  • Commit:
  • comment lines (starting with #) are shown in gray
  • message history popup: hide comments lines if possible
  • disambigued no-name-or-email message
  • Journal & Log:
  • unified "is already pushed" detection
  • remove parenthesis from the displayed author
  • LFS: experimental display of locks state (requires
  • pull.queryRemoteLfsLocks to be set to true and
  • lfs.<remote>.locksverify=true in the .git/config) - see also
  • https://www.syntevo.com/doc/display/SG/Git-LFS
  • Log:
  • Branches view:
  • context actions needed shortcuts
  • enforce the HEAD is selected after performing the initial commit
  • Commits view:
  • added low-level property log.graph.preserverConnectorsUntilFork
  • which (if set) might cause some repositories to look better
  • low-level properties affecting the graph don't require restart
  • any more
  • Git-Flow: disallow modification of non-branch commits (as in
  • Journal)
  • several commands should work on multiple selected repositories (as
  • in Working Tree window)
  • Rebase:
  • Continue should invoke "git rebase --skip" if necessary
  • in rebasing state, the Rebase toolbar button visually clashed with
  • the Abort toolbar button
  • Refresh: "renamed modified" state (as in Log)
  • Submodules (Clone, Pull, ...): if selected to initialize new
  • submodules, this is done recursively unless the low-level property
  • submoduleUpdate.initializeRepository is set to false
  • GUI:
  • Add Repository: now tries to add to the most suitable group (the one
  • which contains other repositories of this directory)
  • Changes view: changed "Force Text" to "Force Compare" and allowed to
  • trigger compare of file considered as too large
  • Changes/Compare:
  • select rows by using the line number column
  • http://smartgit.userecho.com/topics/581-
  • Repository Settings: shows warning for missing/wrong name/email
  • moved "Show Working Tree Window"/"Show Log Window" and "New Log
  • Window"/"New Working Tree Window" to Window menu
  • Fixed Bugs:
  • Git:
  • Clone: possible interference with Branches refreshing
  • GitLab integration: possible "Could not parse date" error
  • Investigate: possible internal error caused by adding/removing tabs
  • Log:
  • Branches view:
  • for a new (empty) remote the preceding checkbox was shown semi-
  • selected suggesting that there was something selected inside
  • Changes view:
  • didn't refresh for currently selected Working Tree or Index file
  • scrolled to top after any change
  • Checkout: suggested to track an already tracked remote branch
  • Commits view:
  • merging/rebasing state did not show up if Working Tree and Index
  • were clean
  • possible internal error right-clicking
  • Details view: showed user name as link even if no email was stored
  • Files view:
  • Show Changes, Save As and Compare with Working Tree did not work
  • if 2 commits were selected
  • Save As might hang for Git-LFS files where blobs were not
  • present yet in local repository
  • Compare with Working Tree: showed wrong button texts
  • View Unchanged option was not enabled for commit selection
  • Find Object: did not work in bare repository
  • Refresh: if repository became temporarily invalid, Branches state
  • and thus graph became lost
  • Repositories:
  • opening missing repository did not properly detected missing
  • state
  • opening a repository which already was open in a Working Tree
  • window did not work
  • Squashing commits rewinded 1 commit too far
  • possible internal error related to shallow clones
  • possible internal errors related to partly unshallowed repositories
  • Refresh:
  • after renaming a file a second time, untracked artifact remained
  • until performing a clean refresh
  • macOS: failed to pick up directory renames
  • Show Changes: could not be opened for a removed file
  • GUI:
  • Compare:
  • internal error replacing text under certain conditions
  • line number gutter size did not change if more lines were added
  • Commit file name completion: performance problem for large number of
  • files
  • Find Command/Object: added workaround for anti-aliasing bug
  • https://bugs.eclipse.org/bugs/show_bug.cgi?id=537417
  • Index Editor/Conflict Solver: inline changes did not correctly show
  • up for left-middle blocks
  • Linux: could not override JRE (using ~/.smartgit/smartgit.vmoptions
  • file) because of bundled JRE

New in SmartGit 18.1.5 (Sep 25, 2018)

  • New Features, Improvements:
  • Git:
  • Push to Gerrit: if topic is entered, add topic to master-option, like "refs/for/master%topic=topic"
  • Fixed Bugs:
  • Git:
  • Gitignore/Git-config editor: is bright even with dark theme
  • Find Objects: possible internal error when entering a long search
  • string
  • Refresh/Log: rename detection limit should be 50% by default (as for
  • Git)
  • Hg:
  • internal error if no Git executable is configured
  • startup: possible internal error related to a bad settings.xml

New in SmartGit 18.2 Preview 6 (Sep 5, 2018)

  • New Features, Improvements:
  • Git:
  • Clone: if there is an URL in the clipboard, pre-select entire existing text
  • in URL text field
  • Files table/view: support path-separator for the Filter
  • Log:
  • Commit vs. Index compare by selecting Index node and a commit node
  • Refresh:
  • faster refreshing of pending changes when switching between repositories
  • submodule refresh should update parent repository state, too
  • working tree state refresh performance improvements
  • Repositories: Open Repository in New Window should be applicable to
  • multiple repositories
  • Statusbar layout unified with main window
  • Low-level property "log.graph.forceShowAuthorIfNotEqualCommitter"
  • Repository, Settings: better understandable submodule Push options
  • Setup: ask which kind of view (working tree view vs. Log view) user prefers
  • Submodule, Deinit: should be available on "modified" submodules, too
  • Fixed Bugs:
  • Git:
  • Log:
  • Commits view:
  • crash when invoking Reveal Working Tree without having a repository
  • selected in Repositories view
  • revealing previous commit should not start heavy-weight query if commit
  • is already present in the graph
  • Files view: Log on submodule with New Window option selected failed to
  • properly select submodule node in Repositories view
  • Refresh:
  • may have failed to detect merge/cherry-pick/revert/rebase/bisecting
  • state
  • possible hang after trying to open broken repository
  • possibly outdated working tree state, caused by concurrent refreshes
  • Repositories view:
  • internal error when trying to remove missing repository
  • outgoing commits marker on submodules should show up, regardless of
  • which node is currently selected in the tree
  • when "Allow to open multiple Log windows for the same repository" is
  • selected in Preferences, it should be possible to open an already opened
  • repository from the Repositories view context menu
  • Squash: false-positive warning about pushed commits for repositories
  • which don't have remotes
  • SVN: background clone did not start
  • Repository|Settings should not be enabled for closed repositories
  • GUI:
  • Tree (macOS): right-clicking while a popup menu already is showing was
  • showing empty popup menu

New in SmartGit 18.2 Preview 4 (Aug 10, 2018)

  • New Features, Improvements
  • GUI:
  • system property "tooltip.enabled" to disable the large tooltips
  • Fixed Bugs
  • Git:
  • Blame: possible internal error
  • Clone (SSH): possible out-of-memory error when using built-in SSH client
  • Edit Last Commit Message: was erroneously not allowed in rebasing state
  • Ignore dialog: ignoring by pattern was broken
  • JIRA: for JQL queries, substituted project IDs had the be put in quotes
  • Log:
  • Tools menu: did not update if tools configuration in the preferences got
  • changed
  • View | Include Tracked Remote Branches did not update instantly
  • Push to Gerrit: target selection was not honored if entering a topic
  • Repository | Edit Git Config | User: used wrong file if HOME was configured
  • Bitbucket:
  • possible "cyclic reference" error
  • error "Object 'user/username' not found" for deleted comments, authors
  • GitHub/Bitbucket: possible error message "Could not determine remote ref for
  • pull request anchor" for special URLs
  • Compare:
  • Ctrl+Shift+Up/Down changed read-only file content
  • Ctrl+D on empty line -> internal error
  • possible internal error pinging license server
  • Linux:
  • bundle did not start (e.g. on SuSE Leap)
  • Windows:
  • added system property "fileMonitor.analyzeSystemLoad" to prevent hard
  • crashes in msvcrt.dll (Java or Windows bug on certain machines)
  • temp directory was not cleared on system shutdown

New in SmartGit 18.2 Preview 3 (Aug 1, 2018)

  • New Features, Improvements:
  • Git:
  • Log:
  • allow to open multiple repositories/submodules
  • modified submodules are denoted in parent repository
  • Add Tag/Branch: depending on focused view, either the selected commit or
  • HEAD will be used
  • LFS:
  • performance improvements
  • prune command
  • GUI:
  • Find Command: finds external tools, too
  • Repositories view: most recently used repositories in hamburger menu
  • Fixed Bugs:
  • immediate crash with fresh settings
  • Git:
  • Log:
  • fetching open repository in the background asked for the master password
  • possible hang after opening invalid repository
  • permanently scrolled HEAD/Index/Working Tree into view
  • Clone resulted in immediate error
  • BitBucket Server: possible "Could nto convert URL" error for file names
  • containing spaces
  • Review commands: were enabled even for non-configured repositories
  • SVN:
  • Remote Properties could not be changed
  • GitLab:
  • possible internal error
  • GUI:
  • Changes view:
  • accelerators for menu items moved to the hamburger menu did not work
  • performance problem for large files

New in SmartGit 18.2 Preview 2 (Jul 24, 2018)

  • New Features, Improvements
  • Git:
  • Log:
  • added Find Object
  • Branches: if "Include Tracked Remote Branches", HEAD is selected, HEAD is
  • pointing at a tracking branch, its tracked branch also is shown
  • Commit: preselects Staged files (as working tree window does)
  • Files:
  • "Related Path" column as optional alternative for "Name" and "Relative
  • Directory" columns
  • switches automatically to Working Tree/Index in case of detected
  • local changes
  • Ctrl+F jumps to the Commits or Files filter depending on the focused
  • control
  • Repositories: remembers submodule-expanded state
  • Refresh: performance improvements in case of merging state and many refs
  • SVN:
  • Background fetch: support for config option
  • svn-remote.<id>.smartgitBackgroundFetch=false
  • Bitbucket:
  • support left/right Changes view comments
  • low-level property to configure per-page limit
  • GitLab: enhanced integration (merge requests and comments, OAuth)
  • GUI:
  • most options of the Changes menu have been moved to the 3-stripe menu of the
  • Changes view
  • Journal: if graph column is too narrow to show all, a tooltip shows the
  • message
  • some low-level properties now can be applies without the need to restart
  • Fixed Bugs
  • Git:
  • Commit: if in cherry-pick mode, amend was enabled though not supported
  • internal error if having Log as default window and multiple repositories were
  • open on previous exit
  • Log
  • Background fetch of open repository did not work
  • Changes view: continued to show file even if non has been selected any more
  • Coloring: the last coloring was not remembered
  • Drag and drop: possible internal error
  • internal error opening repositories with "/." in their path
  • possible performance problem
  • drag and drop: reordering commits brought window to front
  • Refresh: working tree did not refresh after external merge
  • Repositories: Open Repository command were enabled for multiple
  • repositories or groups
  • Welcome dialog allowed to open multiple repositories
  • GUI:
  • new dock tabs: resize problems if Comments and Files were tabs in the same
  • tab folder
  • CentOS 6: SWT crash because of forced GTK3
  • Other Noteworthy Changes
  • shortcuts Ctrl+Up/Down had to be replaced by Alt+Up/Down because it conflicted
  • with default table/tree selection
  • some view-specific shortcuts are configurable in Edit | Customize but can't be
  • found in the main menu

New in SmartGit 18.2 Preview 1 (Jul 5, 2018)

  • Git
  • Log:
  • support for working tree and index operations
  • working tree and index can be show as virtual nodes attached to the HEAD
  • commit or indepdent in the Files view
  • allows to switch repositories, submodules
  • can be used as main window (preferences option)
  • Journal-like commands to rewrite commits (change order by drag and drop,
  • squash, change commit message)
  • Files view: filtering similar to working tree window
  • Push now pushes the current branch (HEAD) independent of the commit
  • selection - similar to working tree window
  • improved memory consumption for filtering
  • Reveal a commit resets filter, if necessary
  • Compare 2 Files: smarter detection of what to compare, e.g. if one
  • extracted a method to a new class
  • Journal/Log Graph:
  • option for showing author in each line, even if equal
  • more system property options for background coloring
  • Move & Squash by drag and drop supports "fixup! " prefix
  • different column configuration for Log and Journal
  • Git-LFS: added Install, Track, Lock and Unlock commands
  • Rebase Interactive: auto-squash to move and squash equally named commits
  • set repository depth, e.g. to reduce the disk space on seldom changed
  • submodules
  • Branches view: indicate refs pointing to same commit as HEAD
  • JIRA, Resolve: added system property jira.workInProgressMarkers
  • Find Object:
  • finds repository groups
  • finds repositories in most recently used order
  • Copy Relative Path: added system property copyRelativePath.useBackslash to
  • configure whether / or should be used
  • Push to Gerrit: added system property ui.showPushToGerritInMenu that defines
  • whether Push to Gerrit will be shown in menu and can be added to toolbar
  • Commit: if it fails because of missing user name or email, the Repository
  • Settings are opened
  • Compare and others:
  • improved Apply Selection
  • inner-line change detection improved when splitting adding/trailing
  • additions/removals
  • Proxy settings are remembered, even if disabled
  • GUI:
  • large tooltips, e.g. in Branches view, became less annyoing - they show up
  • small by default and need a F1 press to fully show up
  • Linux: improved detection of zoom factor
  • Fixed Bugs:
  • Git:
  • Log:
  • stash nodes showed the original commit message, not the stash comment
  • Rebase Interactive:
  • Git had problems on Windows if both, the SmartGit installation directory
  • and the repository, contained spaces in the path
  • failed for worktree repository for changed messages
  • Branches view: F2 on a remote triggered the Rename Stash command
  • Clean Working Tree was enabled for closed repositories
  • Stage/Commit: possible error "pathspec '...' is beyond a symbolic link"
  • Stash Selection: was enabled for submodules though not working
  • Clone and other commands: duplicate error message in case of failure
  • http(s) authentication: possible problems with non-ASCII characters in user
  • name or passwords
  • SSH:
  • using JSCH could cause endless hang
  • possible out-of-memory errors
  • authentication errors
  • GitHub/BitBucket: confusion when having multiple remotes
  • GUI:
  • macOS: configuring accelerators if they already were used in the window-less
  • menu bar
  • perspectives: resized controls were not remembered/restored correctly under
  • certain conditions
  • Other Noteworthy Changes:
  • Linux package ships with bundled Git
  • changed default SSH implementation from SSHJ to JSCH
  • some default shortcuts in View and Window menus have been changed to become
  • similar in working tree window and log window
  • changed default shortcuts for Push/Pull and Find Action/Find Object so the
  • latter can use the more common Ctrl+P
  • no tray icon by default (confused to much users)

New in SmartGit 18.1.3 (Jun 11, 2018)

  • Git (Log):
  • Refresh: improved error message in case of bad stash-reflogs revealing a ref in an existing, filtered log window now resets the filter Updated bundled Git to version 2.17.1 (macOS, Windows; needs new installation or manual triggering of a genuine update in the About dialog)
  • Bitbucket integration: improved error reporting
  • Output dialog: remembers size (and location)
  • Some hosting providers: added low-level property "json.enableGzip" to enable GZIP compression
  • Setup wizard: added option to use gravatar.com (in the preferences, it was moved from the Commands > Log page to the Privacy page)
  • Fixed Bugs (Git):
  • Commit Message view: entered message was not stored in the history
  • Ignore: internal error trying to ignore directory with certain special characters like '[' in its name
  • Local | Rename: allowed to rename the . directory
  • Log:
  • internal error switching back from "Varying Coloring" to "Root Coloring" toggling individual pull requests did not work
  • Log/Journal: - right-clicking an unselected commit showed commands for previously selected commit (Linux, macOS)
  • Refresh: possible error for files with name "aux" (Windows)
  • Stash Selection: failed with quotes in the message
  • Bitbucket integration: problems parsing multiple reviewers
  • GitHub integration (main window): certain errors were not reported
  • GitLab integration: API version v3 is not supported any more
  • SSH:
  • recurring error "The fingerprint of the SSH server has changed"
  • an invalid .ssh/known_hosts file might show a lot of notifications about the failed read
  • Tools: internal error invoking tool on repository located on drive root (Windows)
  • Upgrade (Windows): possible "The process cannot access the file because it is being used by another process" error

New in SmartGit 18.1.2 (May 16, 2018)

  • New Features, Improvements:
  • Git:
  • Log: re-introduced former "varying" coloring
  • added low-level property compare.gitCompatibleBinaryDetection
  • Fixed Bugs:
  • Git:
  • interactive rebased timed out after 2min (Windows)
  • Journal/Log:
  • possible "Node ... not found" error when opening repository
  • right-clicking loses selection if scrolled down
  • Rebase Head To: "Can't rebase HEAD to HEAD or an anchestor commit" error if
  • HEAD is hidden
  • Hg:
  • Conflict Solver: did not open for graft-conflicts
  • Log: internal error when opening in Rebasing state
  • SSH: certain problems with private key authentication (depending on files
  • parallel to the provided private key file)
  • Linux bundle:
  • added work-around for reg-ex related Java crashes caused by syntax
  • highlighting code
  • DEB bundle did not start on Ubuntu 18.04

New in SmartGit 18.1.1 (Apr 26, 2018)

  • New Features, Improvements
  • Git:
  • Git-Flow: if the low-level property gitflow.requireCleanWorktreeOnStart is
  • set to true, starting a feature or hotfix with local changes will abort
  • Log: if low-level property log.graph.displayCommitDateForAuthor is set to
  • true, it will show the author, but the commit (instead of the author) date
  • Output: if low-level property output.showOnlyIfViewInvisible is set to false,
  • the Output dialog is shown independent of the Output view's visibility
  • Fixed Bugs
  • Git:
  • Blame: memory leak
  • Edit Last Commit Message: internal error when in bisecting mode
  • Journal, Move & Squash: when dragging onto first pushed commit, no "already
  • pushed" warning was displayed
  • memory leak when switching between repositories frequently
  • quotes around filter definitions, e.g. git-crypt, caused errors starting these commands
  • possible error "Raw log messge does not parse as log entry"
  • Refresh: internal error when opening repositories with core.worktree set
  • Hg:
  • Refresh: possible hang related to conflicts
  • Compare: Ignore Whitespace should not display completely unchanged blocks as
  • changed

New in SmartGit 18.1.0 (Apr 10, 2018)

  • Git:
  • Log:
  • Possible internal error opening log in merging or rebasing state
  • Added system property smartgit.nodecache.maxCachesToKeepInMemory to limit the log caches to keep in memory
  • Investigate (DeepGit):
  • Memory leak
  • Wrong colors used for system-independent light theme
  • Various commands with dialog-based Log (Checkout, Merge, ...): graph filter options missing in File input field's drop-down menu
  • Linux, Mac:
  • Link to directory could not be deleted

New in SmartGit 18.1 Build 12101 RC 3 (Apr 5, 2018)

  • FIXED BUGS:
  • GIT:
  • Journal: switching repositories did not scroll to top position
  • Log:
  • Details: Copy Ref copied long instead of commonly used short ref
  • possible internal error revealing a commit
  • Reveal sometimes not brought branch into visible area
  • GitHub/BitBucket: UTF-8 encoding should be used to read from REST API
  • Startup: new version check should only occur if "Automatically download and install updates" has been selected

New in SmartGit 17.1.6 Build 11221 (Mar 29, 2018)

  • NEW FEATURES, IMPROVEMENTS:
  • Log, Tools menu: allow tools that operate on the repository using ${repositoryRootPath}
  • FIXED BUGS:
  • Git:
  • Git-Flow: when merging, stop processing if merge aborts due to file permission problems
  • Refresh: possible internal error for special characters in file name and wrong system charset
  • Stash Selection: contained redundant "--" when invoking "git stash push"

New in SmartGit 18.1 Build 12099 RC 2 (Mar 28, 2018)

  • New Features, Improvements:
  • Git:
  • Push to Gerrit: offers "refs/drafts/master", too
  • Select Directory works on submodule directory, not parent directory
  • Select Repository Root, especially for selecting the submodule
  • Journal, Log: if message is truncated, show it as tooltip
  • Fixed Bugs:
  • Changes view: no inline changes showed up for large files with line-ending changes
  • Http(s) authentication: passwords might have been reset if using master password and background fetching is enabled
  • Tools:
  • Edit dialog: some input fields were applied though cancelled after error
  • Open: forked tools were forcefully terminated after 1 minute
  • Possible internal error invoking long-running tool
  • Git:
  • Files view, Size column: showed 0 for missing files instead of nothing
  • Log:
  • Possible internal error in cache
  • Possible long hang when selecting huge commit with many renames
  • Filter: possible long hang when filtering through huge commit

New in SmartGit 18.1 Build 12090 RC 1 (Mar 21, 2018)

  • New Features, Improvements:
  • File Compare tools: support for optional ${leftLocalFile} and ${rightLocalFile} parameters that always refer to the file in the working tree, even if the repository content is stored in a temporary file
  • External tools: refresh selected file after invoking a tool, even if
  • "Show output and wait until finished" is unselecte
  • Git:
  • Log: Compare with Working Tree: improved GUI texts for 2-commit-compare
  • show warning for Git versions that are considered problematic, e.g. with GitHub
  • Fixed Bugs:
  • Git:
  • Git-Flow: possible internal error related to auto-stashing
  • Git-LFS (Windows): the git-lfs executables were not found by Java
  • Changes view:
  • lines for line-ending only changed files may show up entirely modified (instead of inline-changed)
  • modified line-endings are not shown
  • Other Noteworthy Changes:
  • Windows installer: according to Windows guidelines no default desktop shortcut
  • https://msdn.microsoft.com/en-us/library/windows/desktop/dn742493(v=vs.85).aspx

New in SmartGit 18.1 Build 12090 RC 1 (Mar 21, 2018)

  • New Features, Improvements:
  • Git:
  • Log: Compare with Working Tree: improved GUI texts for 2-commit-compare
  • show warning for Git versions that are considered problematic, e.g. with GitHub
  • External tools: refresh selected file after invoking a tool, even if
  • "Show output and wait until finished" is unselecte
  • File Compare tools: support for optional ${leftLocalFile} and ${rightLocalFile} parameters that always refer to the file in the working tree, even if the repository content is stored in a temporary file
  • Fixed Bugs:
  • Git:
  • Git-Flow: possible internal error related to auto-stashing
  • Git-LFS (Windows): the git-lfs executables were not found by Java
  • Changes view:
  • lines for line-ending only changed files may show up entirely modified (instead of inline-changed)
  • modified line-endings are not shown
  • Other Noteworthy Changes:
  • Windows installer: according to Windows guidelines no default desktop shortcut
  • https://msdn.microsoft.com/en-us/library/windows/desktop/dn742493(v=vs.85).aspx

New in SmartGit 18.1 Build 12086 Preview 7 (Mar 14, 2018)

  • NEW FEATURES, IMPROVEMENTS:
  • Git:
  • Branches, Journal: performance improvements
  • Ignore: ability to select 3 ignore file locations: parent directory, root directory, excludes file inside .git directory
  • Log: - Git-Flow layout preserves columns from higher-priority parents
  • Rebase Head To: optionally rebase interactively
  • Journal:
  • option to just display author without date
  • Preferences:
  • Tools: ability to export/import
  • way to edit system properties ("Low-level Properties")
  • converted too specific preferences options to system properties
  • FIXED BUGS:
  • Compare: internal error duplicating lines (Ctrl+D)
  • Find Action/Object: a few fixes
  • Open (external tool): did not provide ${repositoryRootPath}
  • GIT:
  • Refresh: .git/info/exclude and .git/info/sparse-checkout were not honored for worktrees
  • Resolve dialog: resolved the wrong ours/theirs if "Swap for rebase" option was selected in the preferences
  • various commands: possible internal error related to bad .git/config file
  • Edit Ignore: did not work if no local .gitignore file was present and no file was ignored
  • Ignore:
  • repository-only option did not work for worktree repository
  • repository-only option did not add relative path
  • Journal:
  • dropping before first (oldest) commit did not work
  • Squash: authorship selector showed commit instead of author time
  • Log:
  • did not honor "smartgit.refLimit" configuration
  • ancestors of stashes were treated as pushed

New in SmartGit 18.1 Build 12073 Preview 6 (Feb 27, 2018)

  • Git:
  • Bisect commands: reset submodules
  • Commit dialog: cursor-up on empty message gets the HEAD commit message
  • <https://smartgit.userecho.com/communities/1/topics/571->
  • Files view: ability to toogle between (current) Mixed, Index and
  • Working Tree display
  • <https://smartgit.userecho.com/communities/1/topics/77->
  • Ignore:
  • support for adding pattern to repository-only .git/info/exclude
  • <https://smartgit.userecho.com/communities/1/topics/301->
  • Reveal Ignore File has been turned into Edit Ignore File
  • Journal: keep HEAD commit selected if it was selected before a refresh
  • Log:
  • Details: clicking commit ID will navigate to the found commit
  • Filter:
  • better responsiveness
  • limited to prevent memory overflow
  • Log, Journal: detect URLs and turn them into links
  • <https://smartgit.userecho.com/communities/1/topics/86->
  • Output: display more error details, if available
  • Pull/Push/other remote commands: credentials are not dismissed in case of
  • (temporary) 500 internal server error
  • Pull/Sync: display more details on post-operation processing in status bar
  • Push To: shows branch name to push
  • Push to Gerrit: offer to push to master
  • Repository | Edit Git Config: ability to edit .git/config and ~/.gitconfig
  • Refresh:
  • improved .gitignore processing performance
  • <https://smartgit.userecho.com/communities/1/topics/630->
  • "inaccessible" state if working tree content can't be read, e.g. due to
  • exclusive file system locks
  • Reset (Hard), other commands: allow to proceed even if auto-stashing is not
  • possible
  • Revert:
  • update submodules
  • use Git's default message
  • Sync: shows a dismissible confirmation dialog to prevent invoking it by
  • accident
  • Hg:
  • support for Mercurial 4.5
  • Compare and others:
  • improved shifting resulting in smaller change blocks
  • Find and Replace dialog: regular expression can now be used in the replace
  • string, too
  • GUI:
  • Repository | Add Group
  • Updater: shows progress in taskbar icon
  • SSH: by configuring 'smartgit.ssh.impl' you can select between sshj, jsch and
  • trilead as used SSH client for Git or Hg (SVN always uses trilead)
  • Fixed Bugs:
  • Git:
  • Background Refresh (Remote): false-positive incoming marker (green arrow)
  • might remain
  • Branches: Reset always used tracked branch as target
  • Cherry-Pick/Revert: in no-commit mode, cumulated commit message get lost
  • Conflict Solver: if option "Swap on Rebase" is selected in the preferences,
  • files are not swapped correctly
  • DeepGit/Investigate: possible internal error
  • External tools: "Applies To"-file filter was ignored if the tool used
  • "${selectionFile}"
  • Git-Flow: several errors related to "system Git-Flow"
  • Log:
  • Select Parent Commit: possible internal error if parent is not yet loaded
  • internal error invoking graph context menu on bare repository log
  • for Git-Flow-enabled repository possible unexpected connector column change
  • problems dragging multiple commits
  • might not refresh for worktree repositories
  • various commands: were not available on commits containing meta ref
  • Log/Journal:
  • right-clicking link did not show link-context menu any more
  • Ctrl+C did not copy any more
  • various commands: possible internal error related to bad .git/config files
  • GUI:
  • External Tools, "Select which refs"-dialog: needed relayout after swapping
  • Linux/GTK2:
  • Log, Changes view: internal error painting comments
  • Log, Journal:
  • reimplemented whole keyboard and mouse selection
  • right-clicking a different revision while a context menu already was
  • displayed sometimes did not show a new context menu
  • ref-popup was broken
  • Switching perspectives lost focus control
  • possible resource leak related to context menus

New in SmartGit 17.1.5 Build 11217 (Feb 21, 2018)

  • New Features, Improvements:
  • built-in SSH client: support for diffie-hellman-group-exchange-sha256
  • Fixed Bugs:
  • Git:
  • Log:
  • Compare:
  • Linux/GTK2: possible internal error painting comments
  • too large font was used for comments
  • SVN: changing URL did not work reliable - disabled
  • Bitbucket: possible 401 authentication failures after redoing OAuth
  • authentication while SmartGit is running

New in SmartGit 18.1 Build 12057 Preview 5 (Feb 8, 2018)

  • Git:
  • Find Object:
  • allows to check out found branch
  • Journal:
  • Create Tag added
  • Log:
  • Branches:
  • "Compare with Current Branch" added
  • Reveal selects revealed branch
  • Commit graph:
  • truncated refs group shows tags in groups, e.g.
  • "build-12045 ... build-12067"
  • Details:
  • "On Branches" is independent of selected refs for graph display and
  • works for filtered logs, too
  • Repositories view: added "Rename" to context menu of directory
  • Compare:
  • option to split leading/trailing additions or removals to separate blocks
  • Fixed Bugs:
  • Git:
  • Add Worktree: internal error if current directory name == branch name
  • Bisect: could not set HEAD to Bad after having set already to Bad
  • Branches: when tracking breaks, branch entry first shows up in gray and only
  • later in red
  • DeepGit/Investigate: internal error selecting non-in-place change
  • Journal:
  • Select Auxiliary Ref: allowed to select a remote HEAD
  • Log:
  • possible "missing unknown ..." error upon opening
  • scrolling down while 1st line was selected reset view position to top
  • Copy Message: for multiple lines, the order was arbitrary
  • various commands: EOL correction modified even conflicting files
  • Hg:
  • Log: initially showed up empty
  • Compare/Changes view:
  • internal error selecting binary file
  • possible internal error related to "Ignore Line-Ending Changes" option
  • inner-line changes sometimes not occurred up where they should
  • inner-line changes might be outdated after switching options
  • GUI:
  • Customize toolbar dialog: no icons were shown
  • the toolbar drop-downs (Windows, Linux) are now independent from the system
  • tooltip-delay (delay can be configured by setting
  • smartgit.toolbar.popupLongClickTimeout)
  • SSH:
  • potential internal error waiting too long with open password dialog

New in SmartGit 17.1.4 Build 11213 (Jan 30, 2018)

  • Git:
  • External Diff tools:
  • set system property "smartgit.core.cat.applyFilters" to true to apply
  • filter.<name>.smudge
  • System property "smartgit.executable.home" supports $USERPROFILE on Windows
  • support for Git 2.16's SSH client detection ("The SSH server '-G' could not be
  • found")
  • Fixed Bugs:
  • Git:
  • after a fresh setup, "Mark as Favorite" notification comes up again every
  • couple of seconds when dismissing with red x
  • Changes view, Index Editor: staging LF-only files converted it to CRLF in
  • Index
  • Investigate: Open Log may result in internal error if Blame was not yet
  • initialized
  • Log:
  • Branches: toggling single branch in unselected category may add additional
  • 2nd-level branch to selection
  • Changes: Compact Changes option did not work (regression)
  • Refresh: internal error related to renamed files
  • User interface:
  • Preferences, Text Editor colors: ruler colors were not applied/stored
  • OS X: possible internal error related to connecting/disconnecting monitors
  • update check: did remind user to enable update check while it was disabled
  • by system property

New in SmartGit 18.1 Build 12048 Preview 4 (Jan 24, 2018)

  • Git
  • Bisect command with visual clues in Journal and Log
  • Clean command: remove untracked or ignored files/directories
  • Log:
  • ID filter matches SVN revisions, too
  • denotes rebasing state
  • Worktree support:
  • ability to add a worktree
  • ability to prune obsolete worktree information
  • adding a repository will add all worktrees, too
  • searching repositories will find all worktrees, too
  • Compare:
  • Apply Selection: handles special case where selection starts at source block
  • without inner-line changes
  • coalesces nearby changes for inner-line diffs
  • improved block shifting, e.g. to not match across method boundaries
  • improved inner-line diff algorithm
  • option to ignore (only) leading whitespace changes
  • Drag and drop: autoscrolling now starts immediately when the cursor is over
  • the first or last line -> making it easier noticeable
  • Repositories view: command to select obsolete repositories
  • Setup, repository search: groups repositories according to directory structure
  • Fixed Bugs
  • Git:
  • Changes View: a renamed file was not compared correctly
  • Log: resetting filter made selected line not visible
  • SVN:
  • Log:
  • filtering hid SVN column
  • Built-in SSH client: possible error message "The SSH server '-G' could not be
  • found"
  • Linux:
  • workaround for https://bugs.eclipse.org/bugs/show_bug.cgi?id=529126
  • Other Noteworthy Changes
  • Update check (autoupdate) VM options have been unified
  • Windows:
  • executables and installer are signed
  • updated Git to 2.16.1

New in SmartGit 18.1 Build 12037 Preview 3 (Jan 8, 2018)

  • NEW FEATURES, IMPROVEMENTS:
  • Changes view: mouse-wheel scrolling should change to single change, but not scroll the wrong direction
  • Help | Find Action and Help | Find Object (repository, branch, tag, commit)
  • log4j.properties is not used any more, but logger.properties
  • Git:
  • Log:
  • when filtering, the graph structure is kept
  • text for moved/renamed files shortened
  • Files view: "Unchanged Files" option moved to options menu
  • Log/Journal: email address is trimmed from invalid name
  • FIXED BUGS:
  • GTK3: auto-disappearing popup, e.g. after command execution, were shown at random places and most time unreadable
  • Git:
  • Log:
  • File log: possible error "Node ... not found"
  • possible internal error when clicking with mouse
  • merge commits did not show up in gray anymore
  • internal error opening on merging root/file
  • Log/Journal:
  • possible internal error having more than 2 lines selected
  • selection background was wrong with light-theme

New in SmartGit 18.1 Build 12027 Preview 2 (Dec 22, 2017)

  • Changes view:
  • When mouse-wheel scrolling over the connecting control
  • Between both sides
  • For a single changed block will scroll to the single change
  • Scrolling up/down will only scroll up/down, not the other direction
  • Compare:
  • Ctrl+Shift+Up/Down will move the current line up/down
  • Git:
  • Cherry Pick/Revert: automatically pick primare parent changes for merge
  • Commits instead of showing hard to understand parent selection dialog
  • Log:
  • Option to fork merge-parent right-most (less wobbling but more crossings)
  • Log, Journal:
  • Show the HEAD commit message in bold
  • Option to show full author name/email
  • If HEAD is selected in the Branches view and HEAD points to a branch,
  • This branch ref will be shown in the Commits view
  • Abort: aborting a merge will invoke "git merge --abort" instead of
  • "git reset --hard"
  • XML settings files: more compact format making it easier, e.g., to add
  • External tools
  • Fixed Bugs:
  • External diff tools: did not inflate Git-LFS files
  • Git:
  • Git-Flow, Finish: failed if feature contained submodule update
  • Log:
  • Internal error for duplicate IDs
  • Mergable Coloring used wrong colors
  • Possible internal error hovering over Commits view
  • Showed remote HEADs (regression)
  • Log/Journal:
  • Connector click-area broken
  • Refresh: nested root turning into submodule didn't trigger refreshing of the
  • Submodule
  • OS X: possible internal error related to disconnecting monitors
  • SmartGit process hangs if it was launched multiple times

New in SmartGit 18.1 Build 12020 Preview 1 (Dec 12, 2017)

  • New Features, Improvements
  • Journal and Log Graph:
  • completely new implementation
  • better performance
  • improved layout
  • as much text from the message is shown as fits into the available space
  • show either author or committer
  • show either alternating rows or columns
  • Git:
  • Background poll/fetch: periods are configurable in the preferences
  • Branches view:
  • Merge also supports merging from tags
  • Remote Properties dialog: only checks connection if URL has been changed
  • Reset: can be used HEAD to the selected ref or HEAD to its tracking branch
  • Commit: selecting "Amend" asks user if message is not empty
  • Fetch all: continues to fetch from other remotes if one fails
  • Interactive rebase: support for rebase.autoSquash=true to automatically
  • squash commits using "fixup!" or "squash!" commit message prefixes
  • Journal: shows commits also for branches tracking a local branch
  • Log:
  • Commits view:
  • default coloring depends on selected refs and uses colored checkboxes
  • in the Branches view as legend (HEAD: black, some selected refs: several
  • colors, too much selected refs: blue, merged selected refs: brown,
  • others: gray; colors of selected refs follow primary parent)
  • option to show/hide non-selected refs
  • for file logs, refs pointing to the nearest child commits are shown
  • different than refs pointing directly to the commit
  • Details view:
  • new category "on branches" for all refs where the commit is reachable
  • from the primary parents
  • Push To dialog: replaces invalid ref characters like in other dialogs
  • Repository Search: ignores now directories with empty .git directory
  • Hg:
  • Commit: selecting "Amend" asks user if message is not empty
  • Log:
  • added Revert command
  • SSH:
  • SSHJ is used by default supporting more modern SSH servers and is faster
  • JSch is used if smartgit.ssh.useSshj=false
  • GUI:
  • Autoupdate on startup: shows progress when fetching (large) files
  • Changes views, Compare: separate "Remember as Default" menu item
  • Enter should do same as double-click on selected table rows
  • Files table should not show pink if untracked files are hidden and Commit
  • option "Suggest to add untracked files" is not selected
  • system independent light theme
  • table columns use ownerdraw now to avoid problems with theming
  • Repositories view: show "Move To" submenu only for selected repositories
  • work-around for 0x00 settings files after hard crash using backup files in the
  • new .backup directory (which is filled after successful load and used if
  • loading the normal settings failed)
  • Fixed Bugs
  • Git:
  • Commit: incorrect forced-push check
  • Git-Flow, Finish Feature: possible phantom "fatal: Working tree contains
  • unstaged changes"
  • Ignore: used platform line-ending when modifying .gitignore file (instead of
  • keeping the existing line-ending)
  • Journal:
  • Squash was enabled even for non-continues commits
  • File compare:
  • bad repaint performance for large amount of (white)space drawing
  • no syntax coloring was used if file extension was configured as, e.g.,
  • *.html.erb
  • Other Noteworthy Changes
  • Windows bundles:
  • use 64-bit Java and Git
  • smartgit.exe and smartgitc.exe are 64-bit
  • use smartgit32.exe and smartgitc32.exe as fall-back for 32-bit systems
  • support for Java 9

New in SmartGit 17.1.3 Build 11198 (Dec 6, 2017)

  • New Features, Improvements:
  • Log: the count of the loaded commits is now hidden by default (set smartgit.log.commits.showLoadedCount to true to show it)
  • JIRA integration: option smartgit.jira.fixResolutionId to specify the issue resolution ID that should be used to mark issues as resolved
  • Set smartgit.updateCheck.checkForLatestBuildVisible to false to hide Help | Check for Latest Build
  • Investigate: don't require DeepGit license for licensed SmartGit users
  • Fixed Bugs:
  • Git:
  • Merge, Abort and others: could not be invoked if .gitmodules was in conflicting state
  • Refresh:
  • Include with relative path like ../.gitconfig did not work in .git/config
  • Wrong display after creating orphan branch
  • Review comments: not able to add first comment to file

New in SmartGit 17.1.2 Build 11190 (Nov 14, 2017)

  • Git:
  • Abort: made more clear that aborting will perform 'git reset --hard' discarding all local changes
  • large company license handling:
  • added system property "smartgit.license.defaultPath" to change the locationof default license file (instead of "<install-dir>/default/license")
  • if license file is expired, silently update license file from default license file location
  • Fixed Bugs:
  • Git:
  • Background fetch: fetched even unregistered or inactive submodules
  • Commit: in merging state "Commit All Changes" for a modified, renamed file resulted in "pathspec did not match any files" error
  • Commit/Rebase Continue: did not abort in case of conflicts but committed them
  • Compare/Changes view: "as-is" files (.gitattributes: -text) were checked out with wrong line-endings
  • Git-Flow, Integrate: fixed in structions for system Git-Flow
  • Journal: under certain conditions 3 columns were used where 2 would have been sufficient
  • Refresh: possible internal error
  • Compare, Index Editor, ...:
  • Shift+Del did not cut any more (Windows, Linux)

New in SmartGit 17.1.1 Build 11182 (Oct 26, 2017)

  • New Features, Improvements:
  • Git:
  • Commit: set VM option smartgit.commit.checkForValidUserNameAndEmail to false
  • To disable the check for a user name and email
  • Log: shows repository name in title similar to repository window
  • Menu items "Help | Check for New Version" and "Help | Check for Latest Build"
  • Are hidden now if smartgit.disableCheckForNewVersion is set to true
  • Menu item "Help | Register" can be hidden by setting
  • Smartgit.registerEnabled to false
  • External Tools: support ${fileName}
  • More options for user/seat tracking
  • Fixed Bugs:
  • Git:
  • Blame:
  • Internal error if empty file content was encountered refresh:
  • Internal errors if paths contained special unicode characters, e.g. I
  • (large i with dot)
  • Refresh on window activation did not work if there were file monitor
  • Problems
  • Infinite refreshing when opening repository at drive root, e.g. C:
  • Submodule related internal error
  • Compare/Changes: internal error if selecting binary file and
  • Smartgit.compare.skipBinaryComparison was set to true
  • External Tools: directory tools were shown on closed repositories regardless
  • Of configured name pattern
  • GUI:
  • Maximized state was not restored at correct coordinates/monitor
  • Windows: for configured zoom factor 250% the 100% zoom factor was be used

New in SmartGit 17.1.0 Build 11170 (Oct 12, 2017)

  • Other Changes:
  • SmartGit can be started with Java 9 if smartgit.startup.allowJava9=true is set
  • Fixed Bugs:
  • Hg: could not open compare on "merged" files
  • SWT: IME-related exception, e.gwhen clear Chinese text

New in SmartGit 17.1 Build 11168 RC 4 (Oct 11, 2017)

  • OTHER CHANGES:
  • SmartGit requires the use of Java 1.8 - it will reject to work with Java 1.9
  • NEW FEATURES, IMRPOVEMENTS:
  • Git:
  • Cherry-Pick and other commands: only fetch submodules if necessary (regardless of "Always fetch submodules" option)
  • FIXED BUGS:
  • Git:
  • Git-Flow (System), Finish Feature: remote operations like fetching develop might not work
  • Cherry Pick with conflicts: showed "Success" popup
  • Linux:
  • internal error opening repository with Java 1.9
  • assertion showing the Investigate/DeepGit-register dialog

New in SmartGit 17.1 Build 11165 RC 3 (Oct 6, 2017)

  • NEW FEATURES, IMPROVEMENTS:
  • Mercurial:
  • support for Mercurial 4.3
  • GUI:
  • Default selection background color is customizable
  • FIXED BUGS:
  • GUI:
  • Branches, Files view: Pull should not be available in context menu
  • Open: was opening repository root instead of file
  • Repositories view: should not offer Ignore in context menu for closed repositories

New in SmartGit 17.1 Build 11161 RC 2 (Oct 3, 2017)

  • New features and improvements (Git):
  • Fetch can be added as toolbar button
  • Push: popup menu contains Push to Gerrit
  • Journal: increased default for common commits from 10 to 50
  • Conflict Solver: added toolbar button to make showing base file changes more obvious
  • Fixed Bugs (Git):
  • Log: fixed problems in Files view and Changes view for displaying review comments with HiDPI monitors (4K)
  • Push and Pull commands were not available in Repositories view context menu for multi-repository selections
  • Stash: the "Include untracked files" option was not migrated correctly
  • Fixed Bugs (GUI):
  • Fixed instructions for GitLab
  • Other Changes:
  • DeepGit requires the use of Java 1.8 - it will not (yet) work with Java 1.9

New in SmartGit 17.1 Build 11158 RC 1 (Sep 25, 2017)

  • NEW FEATURES, IMPROVEMENTS:
  • Git:
  • Journal, Modify or Split Commit:
  • Split: optionally use just 1 commit by setting
  • smartgit.rebase.split.use2Commits=false
  • FIXED BUGS:
  • Git:
  • Journal: Modify or Split Commit was broken

New in SmartGit 17.1 Build 11149 Preview 17 (Sep 20, 2017)

  • NEW FEATURES AND IMPROVEMENTS:
  • Git:
  • Journal: show more merged, e.g. between BEHIND and AUXILIARY
  • GUI:
  • Compare, Index Editor, Conflict Solver: ability to edit even files with mixed (inconsistent) line-endings, because it would take longer to wait for fixes for applications writing such files, e.g. Arduino IDE
  • Output dialog:
  • added context menu to message part supporting copy and word-wrap support more minor warnings to be ignored, e.g. when "CRLF will be replaced by LF in ."
  • Preferences: added option to restore all confirmation dialogs
  • Push: don't allow for branches tracking another local branch
  • Refresh:
  • refresh on window activation should be more responsive now
  • FIXED BUGS:
  • Git:
  • Background fetch: might produce output dialog on failure though it only should show a popup
  • Commit message: was not cleared sometimes after successful commit
  • JIRA: failed to resolve after having swapped commits
  • Journal: clicking to expand commits did not work reliable
  • Rebase (incl. Pull): auto-stashing changes might not work (regression)
  • Refresh:
  • internal error when having sparse checkout with .gitignore files
  • symlinks on Windows (created with mklink) always showed up as modified

New in SmartGit 17.1 Build 11143 Preview 15 (Sep 10, 2017)

  • NEW FEATURES AND IMPROVEMENTS:
  • Git:
  • Changes: improved performance
  • Distributed Review addon: template for Pull Request Integration configurable
  • External tools: ${repositoryRootPath} is now also supported for closed repositories
  • Files view:
  • context menu: if a submodule is selected, inappropriate menu items are not shown any more
  • Investigate: made darkthemecapable
  • Log:
  • Details: made gravatar image clickable to see large image in browser
  • Push To dialog (for refs): removed "Force" option if modifying pushed commits is disabled in preferences
  • Refresh:
  • ignores missing or bad refs
  • show notification about possible performance problems if much refs were detected
  • the regular expressions to limit the number of loaded tags/remote branches is now configurable in the repository's .git/config (see notificaton)
  • Refresh (after command execution): more responsive if Branches view is still updating
  • Stash Selection: support for untracked files
  • Submodule, Update: "And initialize new submodules" option recurses now by default, unless smartgit.submoduleUpdate.initializeRepository=true
  • GUI:
  • own toolbar implementation:
  • popup buttons will show the popup on mouserelease or longclick, instead of on mousedown
  • buttons with additional popup menu will only show the popup on long
  • click if the option smartgit.toolbar.longClickPopupOnly is set true
  • Windows, OS X bundles: upgraded Git to version 2.14.1
  • FIXED BUGS:
  • Git:
  • Branches: Set Tracked Branch could suggest wrong branch
  • Changes: changed lineendings were shown for changed submodule
  • Commit: comparing added file in staged mode showed working tree changes
  • Log:
  • Delete was enabled if no branch or tag was selected
  • Refresh problem after replacing entire repository ("can't find commit")
  • merge/rebase/cherrypick failed with serious error for mild errors like conflicts now with a warning
  • SVN:
  • Refresh: internal error when opening SVN clone with submodules
  • Delete: could not delete dangling link (Linux)
  • GUI:
  • Changes: fixed possible internal error switching from compact to normal display
  • F2 in the Files view triggered rename stash instead of rename file
  • Preferences: Add/Edit external tool dialog rejected invalid but disabled confirmation message
  • Windows 10: table header was hardly distinguishable from normal rows

New in SmartGit 17.1 Build 11134 Preview 14 (Aug 31, 2017)

  • NEW FEATURES, IMPROVEMENTS:
  • Git:
  • Journal, Split Commit: apply the commit two times for easier splitting
  • Gerrit:
  • support for drafts and topics
  • Push To Gerrit: should be available from Repositories view
  • Push:
  • should behave more similar when invoked in main window and from Branches view/Log
  • Push dialog: option to "don't show again"
  • Stash:
  • improved stash management
  • option "Include untracked files" moved to Preferences
  • quick-stash actions (no message)
  • "Git executable is not valid."-dialog: make the link to stackoverflow clickable
  • GUI:
  • Compare, Apply Selection: allow to operate with selections outside blocks
  • allow to skip "SmartGit needs to check for updates" dialog at startup
  • FIXED BUGS:
  • Git:
  • Branches view: opening a Log from right-clicking a branch did not reveal it (if View|Include Tracked Remote Branches is selected in Log)
  • Push:
  • pushing multiple branches (from Branches view) did not correctly evaluate force-flag
  • Refresh:
  • after commands: did not update renamed missing files
  • avoid useless scanning into ignored directories
  • duplicate submodule was displayed after replacing directory tree by submodule
  • obstructed conflicts should be reported
  • Stash:
  • automatic stash after commands: should honor "Include untracked" option
  • selection stashing: message was always "Created via 'git stash store'"
  • GUI:
  • Changes: applying something caused line separator changes to disappear
  • Commit, Select Message from Log: did not put focus into message editor anymore

New in SmartGit 17.1 Build 11119 Preview 13 (Aug 21, 2017)

  • NEW FEATURES, IMPROVEMENTS:
  • Git:
  • Cleanup renamed to "Run Garbage Collector"
  • Commit: warning "Do you want to commit and push just a subset of all changes" can be hidden
  • Conflict Solver: added preferences options to swap "ours" and "theirs" in case of rebase conflicts
  • Ignore:
  • works on newly removed files, too
  • works on tracked files, too, by removing them
  • Log:
  • drag and drop operations show a popup menu at the drop location instead of a dialog
  • 2 toolbar buttons for Log Repository and Log Selection, each having the other in the popup menu
  • Pull: added Fetch and Fetch More commands as popup menu items
  • Push: toolbar button with Push-To in popup menu
  • Refresh:
  • performance improvements (up to 30% faster were reported)
  • added preferences option to inspect EOLs for modified files (former system property "smartgit.refresh.inspectEOLs")
  • Stash: ability to rename (only the stash, not the created commits!)
  • Hg:
  • 2 toolbar buttons for Log Repository and Log Selection, each having the other in the popup menu
  • SVN:
  • smartgit.svn.authorsfile uses UTF-8 encoding now
  • GUI:
  • Commit Message input field: prevent entering/pasting 0x00 characters
  • verbose date: added option in the preferences to disable the "Yesterday" display
  • own toolbar implemenation:
  • smaller area to trigger popup (means larger area for triggering the normal command), because the popup also can be activated by click and hold
  • FIXED BUGS:
  • Git:
  • Branches: renamed stash did not show new name (stash commit still show the original names because the stash is not recreated but just renamed)
  • Changes: showed "EOL: Unix" on Windows for HEAD vs. Index comparison
  • Commit: newly check for set user name and email did not consider .git/config
  • Log:
  • Checkout: fixed warning trying to check out origin/foo if foo was *behind* origin/foo
  • Output: could not be cleared completely manually
  • Pull: "Fetch merge type no specified" error
  • Refresh:
  • possible phantom modifications when having "ident" attribute set
  • possible duplicate refreshing after executed commands
  • Startup: "--investigate" opened annotate instead of DeepGit if SmartGit already was running
  • GUI:
  • Compare:
  • Apply Selection was often not predictable
  • possible invalid inner-line diff
  • Clone wizard: the remote branch combobox could increase the dialog's with
  • double-clicking renamed file did not open file compare
  • Syntax coloring (Windows): file extension case did matter
  • own toolbar implementation:
  • different spaces between icon/text and popup arrow
  • OTHER CHANGES:
  • renamed "line separators" to "line-endings" because the latter seems more commonly used
  • updated SWT to version 4.811

New in SmartGit 17.1 Build 11103 Preview 12 (Aug 3, 2017)

  • NEW FEATURES, IMPROVEMENTS:
  • Git:
  • Changes view: option to ignore line separator changes
  • Commit: if user.name or user.email are not set, a warning is shown
  • Log Repository: added separate menu item and toolbar button (with popup for log for selection)
  • Pull (multiple repositories): option to fetch tags
  • Repository Settings:
  • completely reworked to edit effective repository values;
  • options from .git/smartgit.config moved to .git/config ("smartgit" section)
  • Journal:
  • added option to show more commits (temporarily until branch or repository is switched)
  • added system properties "smartgit.log.commitMessage.lineFeedSymbol" and "smartgit.log.commitMessage.shortOnlyTitle" (default: true)
  • GUI:
  • date formatting: show weekday for previous week
  • FIXED BUGS:
  • GIT:
  • Git-LFS: recursive patterns like "image/**" were not properly interpreted
  • Investigate: fixed a few visual glitches, especially on HiDPI monitor
  • Output popup: showed success even if cherry pick or external commands failed
  • Proxy: if .gitconfig contained server-specific proxy, it was overridden by
  • the proxy configured in SmartGit
  • Repository Settings: can't clear user settings, e.g. for GPG program
  • Changes view:
  • empty lines with different line separators did not show line separators
  • line separator was shown for last line of files that ended with "normal" character (no line separator) even if all line separators were equal
  • wrong index line separators files configured with text = auto in .gitattributed
  • Index vs. HEAD showed "EOL: Unix expected Windows" by default on Windows
  • toggling "Ignore Whitespace" hid line separator changes

New in SmartGit 17.0.5 Build 10143 (Aug 1, 2017)

  • NEW FEATURES, IMPROVEMENTS:
  • improvements for installations in large companies
  • FIXED BUGS:
  • Git:
  • Conflict Solver/Resolve: "ours" and "theirs" IDs were flipped
  • Commit: when resolving ~ for commit template path, the Git executable HOME was not used
  • Log, Bitbucket integration:
  • "Could not find parent comment" error if parent comment had been deleted
  • "Inline comment #... has neither from- nor to-position set" error for file comments
  • Pull: for untracked branches "Fetch tags" option was not configured to default value
  • Push: could not continue if configured JIRA server was not accessible
  • preferences, tools:
  • editing tools with executables without specified path, but within the system PATH were rejected
  • Refreshing on window activation: did not refresh if file monitor was disabled

New in SmartGit 17.1 Build 11094 Preview 11 (Jul 21, 2017)

  • NEW FEATURES, IMPROVEMENTS:
  • Support for line-based line separators:
  • Changes view: should show them
  • Compare only shows the file content
  • Compare, Index Editor, Conflict Solver: prevent editing when mixed line separators were detected (in that case, please first fix the mixed line separators using a text editor)
  • Author column: support for "LastName, FirstName"
  • Git:
  • Log:
  • Files: distinguish between "Renamed" and "Renamed-Modified" separated Save Stash to Stash All and Stash Selection
  • Stash All: ability to "Just Save" (= stash and re-apply)
  • Stash Selection: file name completion
  • Output view:
  • hidden by default
  • if hidden, shows just a plain auto-hiding notification or failure dialog with command output
  • preferences: removed options to show command and directory - they are always shown now
  • GUI:
  • completion popup now completes with <tab> and <enter>
  • FIXED BUGS:
  • Git:
  • Branches: remote branches inside directory-like sections showed section prefix
  • Investigate/DeepGit was broken
  • Push: JIRA issue were not resolved
  • GUI:
  • Windows: updated Git to version 2.13.3 (if updating installation); default credentials manager is disabled
  • OTHER NOTEWORTHY CHANGES:
  • Windows: updated Git to version 2.13.3 (if updating installation); default credentials manager is disabled

New in SmartGit 17.1 Build 11084 Preview 10 (Jul 10, 2017)

  • NEW FEATURES, IMPROVEMENTS:
  • Git:
  • Branches view: section-nodes are sorted according to user choice (name, date), not always the last one
  • Changes view: added context menu item to open in Index Editor (at same position)
  • GUI:
  • Changes view: optional compact display (option can be found in Changes menu)
  • Author column shortening:
  • Foo-Bar Bazz now can be truncated to F.-B. Bazz or FBB can be disabled by setting smartgit.authorColumn.smartShortening=false
  • FIXED BUGS:
  • Git:
  • Log:
  • possible hang if increasing rectilinearity, combined with preserve parent order
  • Details: parents may not be displayed if not yet loaded into the graph
  • Refresh: possible "error-prone admin area configuration" for cascading, unrelated repositories
  • GUI:
  • accelerator input field: Ctrl+A selected instead of detecting accelerator
  • modifying accelerators kept previous accelerators in windows mapping
  • Ctrl+- and Ctr+Numpad- triggered the same commands

New in SmartGit 17.1 Build 11073 Preview 9 (Jun 16, 2017)

  • NEW FEATURES, IMPROVEMENTS:
  • Git:
  • Log:
  • improved preserving of colors (requires Git-Flow to be enabled)
  • option to force preservering parent order (requires system property "smartgit.log.graph.layoutActions" set to true)
  • Hg:
  • support version numbers like 4.2+309-f40...
  • SVN:
  • Push: support for resolving JIRA issues
  • FIXED BUGS:
  • Git:
  • Rebase: "Continue" button may add unexpected additional commit
  • Refresh: submodules might not be refreshed anymore after switching back from ignored submodule

New in SmartGit 17.0.4 Build 10132 (May 18, 2017)

  • NEW FEATURES, IMPROVEMENTS:
  • Git:
  • Checkout: added system property "smartgit.checkout.fixEols" to disable EOL correction (by setting to false)
  • added system property "smartgit.http.resetPasswordOnBackgroundOperationAuthenticationFailures"
  • FIXED BUGS:
  • Git:
  • Log:
  • Details: children enumeration did not include "incoming" connectors
  • possible internal error revealing a commit
  • Pull: possible bad command name ("no commit")
  • Hg:
  • Commit: possible internal error depending on commit message
  • Repository Search: Windows junctions were not resolved correctly
  • GUI:
  • error dialog used & to escape mnemonic
  • Bitbucket (Stash) config dialog: selecting the SSL client certificate checkbox did not make the input field visible
  • Setup wizard, hosting providers: unhelpful messages like "host" might be reported in case of unknown host
  • completion popup: possible internal error accepting a proposal
  • Review, Edit/Assign: user name/alias completion problems

New in SmartGit 17.1 Build 11064 Preview 8 (May 18, 2017)

  • NEW FEATURES, IMPROVEMENTS:
  • Git:
  • Distributed Reviews add-on: option to read users from CSV file
  • Fetch (more): --unshallow option
  • Ignore: ability to ignore multiple files explicitly
  • Pull (multiple repositories): honors configured "fetch tags" default from single pull dialog
  • Rebase, Continue: ask how to handle untracked files instead of rejecting to continue
  • Refresh: minor performance improvements in case of many refs/tags
  • Hg:
  • support for Mercurial 4.2
  • no dependency on GLIBC 2.14 any more, so it can run on 64-bit CentOS 6.*
  • GUI:
  • the focused Changes view is treated like the Files view would be focused
  • own toolbar implementation to avoid a couple of toolbar bugs
  • FIXED BUGS:
  • Git:
  • Branches: sectioned tags showed section name part (branches didn't)
  • Distributed Reviews add-on: users may become deleted after editing
  • Log:
  • Branch Delete was allowed on git-svn branch but shouldn't
  • Refresh (Windows): performance problems when using junctions
  • Setup wizard: does not require email AND name any more
  • Windows: periodic CPU usage of ~3%
  • GUI:
  • Find and Replace dialog: Find buttons were not enabled when invoked on selected text

New in SmartGit 17.1 Build 11051 Preview 7 (Apr 25, 2017)

  • NEW FEATURES, IMPROVEMENTS:
  • Git:
  • Branches view: reverse-digit-sorting is now configurable
  • Clone: remembers last target paths independent from local source path
  • Log: can be triggered now from renamed file (using the history from the deleted/missing partner)
  • support for "reverting state" (Refresh, Abort command)
  • Windows: updated bundled Git to version 2.12.2
  • Hg:
  • support for version 4.1
  • Compare:
  • Reload: preserves vertical scrolling
  • Setup wizard: only trigger repository search for new users (== no known repository)
  • FIXED BUGS:
  • Git:
  • Clone: with "Fetch all commits" deselected, but then "Fetch all Heads and Tags" selected again, still only the latest X commits are fetched
  • Interactive rebase:
  • failed for submodules
  • failed if core.commentChar was defined
  • could show timeout dialog
  • Log: clustering commits fixes

New in SmartGit 17.1 Build 11040 Preview 6 (Mar 31, 2017)

  • NEW FEATURES, IMPROVEMENTS:
  • dark theme: table header color can be set (especially on Windows)
  • Git:
  • Branches/Tags: numbers in names are sorted reverse
  • Changes view:
  • for renamed file shows HEAD of original file
  • Compare:
  • if invoked on a renamed file works like having the added/untracked and removed/missing file selected
  • if invoked on a submodule "file" shows same information as Changes view
  • Index Editor:
  • if Changes view is focused, the Index Editor is opened at the exact same place
  • for renamed files shows HEAD of original file
  • FIXED BUGS:
  • Password store: master password is reset to empty if no (more) passwords are present on exit
  • Git:
  • Commit: error invoking compare (by double-clicking) for added file
  • Compare: if invoked on a renamed file (pair), the original was not always shown left
  • Preferences: changing "Detect renames" option did not refresh
  • Stage: error "pathspec <original-file-name> did not match any files" for renamed modified files
  • Log:
  • Reveal even asked for Local vs. Tracked branch if both pointed to same commit

New in SmartGit 17.0.3 Build 10122 (Mar 22, 2017)

  • NEW FEATURES, IMPROVEMENTS:
  • JIRA: VM property "smartgit.jira.closedStates" now supports states containing spaces in the name
  • error dialogs: set VM property "smartgit.ui.errorDialog.markdownSupport" to "false" to disable
  • markdown formatting
  • Git:
  • Cleanup: removed option "And reset ('expire') reflogs now" because stashes might be deleted
  • Refresh:
  • for "Modified (EOLs only)" it now is distinguished between stageable and non-stageable
  • rename detection performance improvements for large .gitattributes and many untracked files
  • FIXED BUGS:
  • Git:
  • Log:
  • hangs on certain Linux systems (resolution and scaling factor dependend)
  • Save As: internal error if entering path "C:foo.txt"
  • Rebase: failed in case of commits without commit message
  • Refresh:
  • added/removed/untracked/missing files might not be reported if refresh was interrupted (and
  • resumed) by another operation
  • Refresh (Windows): possible error for read-locked files ("another process has locked a
  • portion of the file")
  • Hg:
  • Conflict Solver: did not show the proper information for renamed files
  • Refresh:
  • "Copied From" path wrong (pointing to file itself instead of copy source)
  • moved, conflicting file showed up as moved instead of conflicting
  • Distributed Review add-on: possible performance problems for large review repositories (due to many refs)
  • GUI:
  • Clone: did not remember recently used URLs
  • Windows installer bundle: missed dictionaries directory

New in SmartGit 17.1 Build 11029 Preview 5 (Mar 15, 2017)

  • NEW FEATURES, IMPROVEMENTS:
  • Git:
  • Clone: allow to specify the branch to check out
  • DeepGit: various improvements and fixes
  • Repository/Directory popup: rearranged some menu items
  • FIXED BUGS:
  • GUI:
  • Tree controls: internal error if selected node has became unselected by collapsing a parent node

New in SmartGit 17.1 Build 11027 Preview 4 (Mar 9, 2017)

  • NEW FEATURES, IMPROVEMENTS:
  • Changes view, Compare: Apply Line/Stage Line/Unstage Line: allow in (equal sized) change blocks
  • Conflict Solver: ability to apply both (Left before Right, Right before Left)
  • Git:
  • Add Tag: removed redundant "Create annotated tag" checkbox
  • Branches view:
  • sort branches *and tags* in sections
  • uses more descriptive "incoming pull requests" instead of showing "(!)"
  • Log: ability to open file with same path (ignoring any rename) in external tool
  • FIXED BUGS:
  • Compare: closing the window could interfere with a previously triggered Save causing internal error
  • speed-search popup was hard to read with dark theme

New in SmartGit 17.1 Build 11023 Preview 3 (Feb 24, 2017)

  • NEW FEATURES, IMPROVEMENTS:
  • Git:
  • Add Tag dialog: added Ctrl+Space popup for filtering of existing tags
  • Journal:
  • Interactive Rebase: support Move & Squash (as in Journal) as for equally named commits
  • Modify and Split Commit: added Modify (for stopping after the commit) and Split (for stopping with commit changes in the Index) options
  • Log:
  • added Interactive Rebase for modifying the history of the head commit
  • Compare:
  • quick precompare distinguishes between binary equal and content equal (except of line separators)
  • Windows, Open in SmartGit: by defining smartgit.open.preferSingleWindow=true not a seperate window is opened, but one existing (even with already opened repository) is re-used
  • FIXED BUGS:
  • Git:
  • Blame: Age and Author highlighting were not dark-theme-aware
  • Changes view: fixed EOL display for no-converting case, e.g. core.autocrlf = false
  • Journal:
  • Checkout was available even for the HEAD commit
  • Interactive Rebase: internal error if multiple commits were removed
  • Stash files:
  • possible internal error
  • problems related to added and removed files
  • GUI:
  • Compare: markers for hidden inner-line changes hard to see on dark theme
  • full-screen and maximized/zoomed state were not distinguished

New in SmartGit 17.1 Build 11019 Preview 2 (Feb 16, 2017)

  • NEW FEATURES, IMPROVEMENTS:
  • GitHub/others: more appropriate validation of certificates
  • Git:
  • Stash selected files:
  • added to Files context menu
  • if 1 or more untracked files are selected, a warning (i) is shown and allowed to proceed
  • GUI:
  • Compare, Conflict Solver: reworked Find, Find & Replace dialogs, added regular expression search, simplified next/prev handling
  • Notifications: more notifications with "Remind me later" option
  • Themes:
  • might extend using existing themes (extends=<theme-resource>)
  • might switch editor theme (preferredEditorTheme=[light|dark])
  • added command line parameter --write-default-theme-file for easier creation of own themes
  • FIXED BUGS:
  • Blame: internal error
  • Refresh:
  • on window activation refreshing failed if file monitoring was broken
  • after commands: might fail after perfroming tool operation

New in SmartGit 17.0.2 Build 10105 (Feb 9, 2017)

  • NEW FEATURES, IMPROVEMENTS:
  • Git:
  • Refresh: untracked/missing rename detection honors "core.jgit.similarityFileSizeLimit" to avoid out-of-memory errors
  • FIXED BUGS:
  • GitHub: updated default fingerprint
  • GitHub, other hosting providers: do not warn for changed fingerprint if it's a known, new fingerprint
  • undone "automatically set java.net.useSystemProxies=true (if not set) to improve auto-detection of proxies" because it causes to always use the system proxy, even if "no proxy" was configured in SmartGit
  • GUI (Windows): sort column was too dark in default bright theme
  • Git:
  • Log:
  • GitHub: possible endless refreshing

New in SmartGit 17.1 Build 11010 Preview 1 (Jan 30, 2017)

  • NEW FEATURES, IMPROVEMENTS:
  • Git:
  • Changes view: if mixed line separators prevent staging/unstaging, an info is shown in the context menu
  • Commit:
  • if in rebasing-state and no committable change detected, Commit is not offered
  • if in rebasing-state Continue Rebase also works with unstaged changes
  • DeepGit: complete integration (no need for external DeepGit installation)
  • Journal:
  • batch process multiple changes (Rebase Interactive)
  • command to split commits
  • Log:
  • Reveal can work on remote or local branches regardless of display options
  • removed "Include Tracked Remote Branches" from Branches view context menu because it also influences Commits view
  • Pull, Fetch: offers to remove invalid fetch refspec from .git/config
  • Stash: works on selected files
  • Sync: updates toolbar button according to configured pull-push order
  • Quickly locate (matching) gitignore files
  • FIXED BUGS:
  • Git:
  • Git-Flow: Finish Feature might fail if develop had submodule changes

New in SmartGit 17.0.1 Build 10100 (Jan 27, 2017)

  • NEW FEATURES, IMPROVEMENTS:
  • automatically set java.net.useSystemProxies=true (if not set) to improve auto-detection of proxies
  • FIXED BUGS:
  • http(s) authentication: proxy passwords containing special characters like # did not work
  • default external tools were not recreated after removing tools.xml and restarting SmartGit
  • Git:
  • Commit, Stage, others: fails on renamed files in submodules with 'pathspec did not match any files' error
  • Log, Refresh: did not refresh if .git/-admin root was not located below working tree root (like for submodules)
  • SVN:
  • possible "URL mismatch" error

New in SmartGit 17 Build 10090 (Jan 17, 2017)

  • Fixed Bugs:
  • different input fields: Ctrl+Alt+Z performed undone; preventing entering Alt Gr+Z characters on some keyboards

New in SmartGit 17 Build 10088 RC 3 (Jan 13, 2017)

  • NEW FEATURES, IMPROVEMENTS:
  • Git:
  • Refresh and Log: added system property "smartgit.renameDetection.similarityThreshold" determining how similar files must be to be detected as renamed (0..100)
  • FIXED BUGS:
  • Git:
  • Index Editor: when closing while Save is in process, another Save-Discard dialog popped up

New in SmartGit 8.0.4 Build 8166 (Jan 11, 2017)

  • NEW FEATURES, IMPROVEMENTS:
  • Git:
  • Log (file): added system property "smartgit.log.stopAtAdditions" to stop at additions when setting to false
  • FIXED BUGS:
  • Git:
  • Log:
  • memory leak related to hyperlinks created by .gitbugtraq
  • GitHub, Refresh: "Invalid paths" error
  • GitHub markdown: links like #254 at the beginning of a line were erroneasly recognized as header
  • Pull: Submodule update did not preserve branch anymore
  • Hg:
  • Refresh: fails if branch, bookmark or tag name contained a tab character
  • Compare: possible syntax-related internal error
  • Windows: GIT_TEMPLATE_DIR was not set correctly for 64-bit Git installation

New in SmartGit 17 Build 10081 RC 2 (Jan 4, 2017)

  • NEW FEATURES, IMPROVEMENTS:
  • main toolbar: the Abort button is added automatically
  • FIXED BUGS:
  • some proxies did not work because of the unproxied DNS query
  • Changes view:
  • "No more changes" popup was hard to read on Ubuntu
  • Current Line display: possible internal error while painting
  • Git:
  • Refresh:
  • after renaming/removing added (or rename-detected) file, refresh did not
  • update this file
  • false-positive modifications (which only vanished after invoking
  • "git status")
  • possible dead-lock for background refresh

New in SmartGit 17 Build 10078 RC 1 (Dec 21, 2016)

  • NOTEWORTHY CHANGES:
  • the version has been renamed to 17 (for the first expected release in 2017)
  • NEW FEATURES, IMPROVEMENTS:
  • Hg: support for version 4.0
  • Conflict Solver: allow to skip warning dialog notifying about not having resolved all conflicts
  • Git:
  • Journal:
  • for local-only Git-Flow features, only commits from feature branch are highlighted as "ahead" (orange)
  • for Git-Flow features latest develop commit is denoted if develop isn't the auxiliary branch
  • option to hide common commits
  • Log:
  • Cherry Pick: show (hidable) dialog if conflict occurred
  • when applying filter, the list is sorted by Commit Time, then Author Time
  • Pull: "remember as default" resets branch.rebase config options
  • Rebase: set system property "smartgit.rebase.disablePreserveMerge" to "true" to disable "--preserve-merges"
  • Refresh, rename detection:
  • notification in case of long running rename detection
  • performance improvement in case of no missing files
  • option to disable detection or disable for missing and untracked files
  • FIXED BUGS:
  • Mark as Favorite: possible dead-lock
  • Git:
  • DeepGit integration: shows error if failed to start DeepGit
  • Delete Tag: failed if one remote repository was read-only (e.g. upstream)
  • Log:
  • Branches: "Show Content" on stash created entries in "Commit" sections

New in SmartGit 8.1 Build 9065 Preview 5 (Dec 7, 2016)

  • NEW FEATURES, IMPROVEMENTS:
  • Git:
  • Abort command/toolbar button to abort Rebase or Merge
  • Add Tag, Create Remote: replaces invalid characters with valid ones
  • DeepGit integration honors selected line from Changes view
  • Push to Gerrit: honor tracked branch
  • Refresh: shows renamed files; not just added-removed, but also new-missing ones
  • GUI: theming support; the default dark-theme can be selected in the preferences
  • Log:
  • added preferences option to allow opening multiple log windows for the same repository
  • separate text color for messages of merge commits (that usually are not that important)
  • Show Changes:
  • works on multi-commit selection in Commits view
  • in case of 2 selected files, ask whether to compare against each other or separately
  • FIXED BUGS:
  • Check for Update at startup: possible internal error
  • Compare, Changes view, Current long lines:
  • often showed the wrong inner-line
  • did not repaint immediately when changing the editor theme changes
  • SSH: incorrect usage of user name from ~/.ssh/config
  • settings:
  • it could be possible that settings files were written with 00-byte content
  • incorrectly named settings file
  • Git:
  • Branches, Push To: always preselected Custom Ref if it was used one time in the past
  • Log:
  • for a renamed file, when selecting 2 commits, the wrong file was selected in the Files view
  • Comments view: delayed "could not be revealed" error if Changes view was not visible

New in SmartGit 8.1 Build 9047 Preview 4 (Nov 18, 2016)

  • NEW FEATURES, IMPROVEMENTS:
  • Autoupdate: no "Started downloading version x.y" anymore
  • Compare, Changes view: optionally show left and right current line one above
  • the other
  • Confirmation dialogs: some confirmation dialogs, e.g. to switch branches, can
  • be skipped by clicking "Don't show again" checkbox
  • Docking: when closing a view, a message is displayed how to show the view
  • again
  • Log: customizable branch coloring, also for dark themes
  • Out-of-memory-instructions improved
  • Preferences: ability to show stored passwords
  • Git:
  • BitBucket server: for inaccessible pull requests, internal /refs/pull-requests/-refs are used to still work with them
  • BitBucket/GitHub: when fetching pull requests, trees are tried to merge for the virtual pull request commit
  • Branches:
  • ability to copy ref name or tag message (as part of the ref name)
  • more detailed rendering for push.default != tracking branch
  • Checkout remote branch:
  • suggest - as name if there are multiple remotes and is already existing
  • "tracking" checkbox is not cleared when editing the branch name, but only if a local branch tracking this remote already exists
  • Cleanup: added VM property smartgit.cleanup.maxAllowedLooseObjects to configure the limit when SmartGit shows a needs-cleanup-notification
  • Journal/Log, Author column: "." is used as separator, too
  • Log: Copy actions are now available if command is running
  • FIXED BUGS:
  • BitBucket, GitHub: pull requests for branches with / in their name could not be fetched and used
  • Repositories: dragging repositories to other groups was broken
  • Git:
  • F2 while a file was selected did not open the rename file command
  • Log: - refresh after commands was broken

New in SmartGit 8.1 Build 9036 Preview 3 (Oct 25, 2016)

  • NOTEWORTHY CHANGES:
  • Java 1.8 is now required to launch SmartGit
  • NEW FEATURES, IMPROVEMENTS:
  • Conflict Solver: ability to show Base file in separate left-base-right window
  • DeepGit integration: an installed DeepGit is detected and an appropriate menu item added
  • Git:
  • Branches: speed-search finds branches also in collapsed sections
  • Initialize: option to create initial empty commit for better flexibility
  • Log: Copy Messages and Copy ID work on multiple selected commits now
  • Push To: remembers custom ref radio button state
  • when in rebasing or merging state (after a conflict), the toolbar items for Commit and Discard should change ()
  • GUI:
  • Changes, Compare, Conflict Solver:
  • ability to select syntax highlighting language
  • current-line highlight in gutter only when focused
  • Repository:
  • "Open Repository in New Window" works for multiple repositories and groups
  • speed-search finds repositories also in collapsed groups
  • Open and Clone create new repository in same group as currently opened repository
  • FIXED BUGS:
  • Bootloader did not work with Java 1.9
  • Git:
  • Log: refreshing comments from GitHub blocked other views like Files or Changes
  • GUI:
  • Commit dialog: file name completion was broken
  • dragging files to other applications did not work for the Relative Path column
  • Setup wizard: fixed too large space on Executables page

New in SmartGit 8.0.3 Build 8156 (Oct 12, 2016)

  • FIXED BUGS:
  • Git:
  • Add Branch/Create Feature: allowed characters < or > and then failed
  • Journal: possible empty if reflog commits were not present in repository any more ("missing commit" error in log.txt)
  • Push: Configure tracking did not work when using push.default=matching
  • various commands: possible internal error in case of much output
  • Upgrade: error "control files ... does not contain entry" trying to upgrade from SmartGit 6.5 to SmartGit 8
  • possible internal error closing repository
  • Distributed Review add-on:
  • possible internal error related to closed pull requests
  • possible "could not fetch remote ref" for Distributed Review databases in
  • submodules
  • SVN:
  • Add Tag: did not work for SVN repository
  • Commit & Push did not work for single-branch layout SVN clones

New in SmartGit 8.1 Build 9024 Preview 2 (Oct 6, 2016)

  • NOTEWORTHY CHANGES:
  • updated SWT to version 4.712
  • NEW FEATURES, IMPROVEMENTS:
  • Journal, Copy actions: work on multiple selected lines
  • Hg:
  • Support for version 3.9.
  • GUI:
  • Compare: shows current-line color in gutter
  • FIXED BUGS:
  • Git:
  • Branches, Merge: was not correctly disabled for current branch
  • Refresh: possible internal error related to invalid paths on VM share
  • File monitor: on window activation a short time is waited before starting the refresh because other applications might store the files on window deactivation
  • GUI:
  • Setup wizard: the user/email page might get disabled
  • spellchecker did not support contractions (doesn't, ain't, hasn't)
  • possible internal error in case of commands producing very much output
  • work-around for https://bugs.eclipse.org/bugs/show_bug.cgi?id=501509 (Ctrl+Alt+ may be used to enter characters; such accelerators did
  • not work if a text control was focused)

New in SmartGit 8.0.2 Build 8150 (Sep 30, 2016)

  • Git:
  • Background fetch: property "smartgit.repositories.background.fetch.delay" was not honored
  • Commit/Stage: possible internal error for invalid file names (with respect to configured LANG)
  • Commit dialog, Select button: commit messages with tabs caused odd layout
  • https authentication: no username/password prompt for multi-line "authentication failed for" errors
  • Journal:
  • Edit Author failed for commit messages starting with #
  • might show obsolete branches in the "Show Additional Branch" popup
  • single commit on master showed up with "tracking" jigsaw part
  • Log:
  • Checkout: not always all branches on the commit were offered to check out
  • Details: parent were sorted in visual order instead of raw commit order
  • File log:
  • Files view: current item might not be preselected correctly
  • missing tree error for inlined submodules
  • Push:
  • internal error having remote.push=HEAD configured
  • GUI:
  • Compare: unindent (Shift+Tab) did not keep selection some Ctrl+Alt+ accelerators fail if the focus is in a text control (reason: Ctrl+Alt+ is used with some keyboard layouts to enter special characters)

New in SmartGit 8.0.1 Build 8142 (Sep 12, 2016)

  • FIXED BUGS:
  • GIT:
  • Branches: misleading ahead/behind commit display in case of push.default branch != tracking branch
  • Log: memory leak if having the Log window open for a long time
  • Refresh, File Monitor: smartgit.fileMonitor.excludeIgnoredDirectories=false does not work properly
  • Stash-on-demand: possible internal error related to progress display
  • Commit:
  • false-positive "diverges remote branch" warning when trying to Commit&Push merge commit
  • flickering if spell-checker and line-length-guide want to highlight
  • SVN:
  • Journal: tracked/tracking display wrong (no jigsaw connection)
  • GitHub:
  • comment timestamp was not shown in current time-zone but GMT
  • GUI:
  • Compare: internal error apply selection/lines for inserted block at end of file
  • Commit: file completion did not show anything if nothing matching was found

New in SmartGit 8.1 Build 9014 Preview 1 (Sep 9, 2016)

  • NEW FEATURES, IMPROVEMENTS:
  • Compare: improved inner-line change detection with emphasize on content (whitespace is less important for detecting similar blocks)
  • Compare, Index Editor, Conflict Solver: Next/Prev Change moves caret in all panes, not just the focused one
  • Git:
  • Push: forced push checks whether head ever was on remote branch (If a forced push failed because of incoming changes, just fetching the changes and trying to perform the forced push again was possible)
  • register URL handler for git:// and github-mac://
  • Commit: allow to commit while in rebasing state without continuing rebase
  • Branches:
  • Delete Tag: made harder to delete from remote by mistake
  • optionally hide remote-only branches in Git-Flow sections
  • Journal:
  • Edit Command Message: allows to edit HEAD commit message under same conditions as Edit Last Commit Message (e.g. merge commit)
  • optionally switch to any auxiliary ref by double-click
  • GUI:
  • Branches, Journal: if focused, accelerators invoke context-specific command
  • File completion input field: if upper-case character has been entered, an upper-case match is preselected
  • right-clicking issue links (e.g. in Journal, Log), shows URL-specific context menu
  • Output view: the command output should not be removed by too many output
  • Refresh:
  • more responsive, happens earlier
  • background refresh does not refresh up to 5 repositories not marked as favorite any more
  • FIXED BUGS:
  • Compare, Index Editor, Conflict Solver: undoing changes out of view did not scroll the undone change into view
  • Git:
  • Files view, "State" column: incorrect sort order for submodule items, for unchanged submodules "As Index" is shown instead of "Unchanged"
  • Conflict Solver: did not properly 'switch' left and right for 'apply'-refase (invoked from outside SmartGit)

New in SmartGit 8 Build 8134 RC 3 (Aug 30, 2016)

  • FIXED BUGS:
  • Git:
  • Log: should not fail in case of missing stash commits, but silently ignore them
  • Journal: fails to drag&drop commit between last incoming/behind and first common commit
  • GUI:
  • Startup: possible false-positive "upgrade not supported by license" error
  • Log: Edit | Copy Name was enabled but did nothing
  • Welcome dialog: "Show dialog..." checkbox was ignored when clicking Close

New in SmartGit 8 Build 8131 RC 2 (Aug 23, 2016)

  • NEW FEATURES, IMPROVEMENTS:
  • Git:
  • Journal: option to toggle display of incoming commits
  • FIXED BUGS:
  • Git:
  • Refresh:
  • internal error when using Cygwin symlink in the .git/-admin area
  • possible false-positive "The submodule at ... has an error-prone admin area configuration" warning
  • SVN:
  • revision -1 could be shown if a remote SVN had been added using git-svn to an existing Git repository
  • GitHub Enterprise:
  • OAuth was incorrectly available
  • GUI:
  • Compare: Ctrl+Tab did not move focus to other control any more
  • Windows: work-around for the SWT bug
  • Windows bundles: under certain conditions Git might complain about missing DLLs

New in SmartGit 8 Build 8123 RC 1 (Aug 8, 2016)

  • NEW FEATURES, IMPROVEMENTS:
  • Git:
  • Journal: - detached HEAD commits show up in gray
  • Refresh: ability to dismiss warning about absolute submodule paths
  • Hg:
  • VM property "smartgit.hg.executable.maxVersion" to force SmartGit accept more recent versions
  • SVN:
  • VM property "smartgit.svn.enableGitFlow" to enable Git-Flow for SVN repositories
  • Compare: - added tab indents/shift+tab unindents if text across multiple lines is selected
  • optional daily ping of customizable URL, e.g. to verify the actual user count, by defining the VM options smartgit.license.serverPing.url and smartgit.license.serverPing.method
  • FIXED BUGS:
  • Git:
  • Journal:
  • possible unnecessary column swap of ahead and behind curvy layout
  • commit not considered mergable for some layouts
  • Show Additional Branch popup menu was unsorted
  • Refresh:
  • possible false-positive "The submodule at ... has an error-prone admin area configuration" warning if paths differ only in case
  • GUI:
  • Tree control: internal error expanding parent-nodes with single-child nodes that automatically expand
  • Search Repositories: OK was not enabled after manual search
  • Conflict Solver configuration: titles patterns were rejected
  • Table, e.g. in Journal: double-clicks were triggered even for non-left mouse buttons

New in SmartGit 7.1.4 Build 6127 (Aug 2, 2016)

  • NEW FEATURES, IMPROVEMENTS:
  • SSH (internal client): improved error messages
  • FIXED BUGS:
  • Git:
  • Git-LFS: discard failed with "unable to unlink" error
  • http(s) authentication: user names with backslash where handled incorrectly
  • JIRA: possible endless loop if server certificate was invalid
  • Refresh (Windows): possible phantom modifications becauseC:ProgramDataGitconfig was not honored

New in SmartGit 8 Build 8117 Preview 14 (Jul 28, 2016)

  • NEW FEATURES, IMPROVEMENTS:
  • BitBucket server: support for "Clone in SourceTree" links
  • Git:
  • Commit: show file count
  • Journal:
  • do not distinguish between ahead and pushable commits to improve performance
  • performance improvements if commit times are not strictly topologically sorted, e.g. after a rebase
  • added tooltips
  • Log:
  • Branches: added Set Tracking, Stop Tracking, Rebase HEAD to
  • FIXED BUGS:
  • BitBucket (server): refreshing failed in case of inaccessible forks
  • Startup: new version check could report version 8 preview as incompatible (false-positive)
  • Git:
  • Branches: refresh icon for repository provider did not show up reliable
  • Journal:
  • in case of feature branch, the develop-ref only showed up after pushing
  • possible strange layout without connections between local and remote branch
  • Log:
  • file log: internal error if file had been created in last changed commit
  • Repository Settings: entering user name/email and having "Remember as default" selected, did not work
  • Author table column: possible internal error if too narrow and name contained multiple spaces

New in SmartGit 8 Build 8111 Preview 13 (Jul 28, 2016)

  • CHANGES:
  • renamed version from 7.2 to 8
  • NEW FEATURES / IMPROVEMENTS:
  • Git:
  • Branch: Delete: also cleans up .git/config fetch refspecs
  • Clone: when cloning without submodules, Repository Pull settings are now configured to not initialize new submodules
  • Journal: when merging from auxiliary branch, the branch is used for naming iinstead of the commit
  • Log:
  • Branches: added Push to Gerrit
  • Distributed Reviews: disallowed comments on file changes if it's not exactly a single commit diff
  • File log: performance improvements
  • Pull:
  • option to update changed tags ("pull --tags")
  • pull.rebase option had been reworked; remembers defaults per repository
  • Revert (Log, Journal): works on multiple commits
  • support for github-windows://openRepo/
  • FIXED BUGS:
  • Git:
  • Journal:
  • possible internal error depending on commit structure
  • prevents showing auxiliary ref if it is equal to the remote branch
  • Log:
  • drag and drop could schedule multiple comamnds while another command was running
  • Push/Push To: might fail for tags
  • Refresh:
  • possible error "Cannot read ....gitconfig" for certain at end of lines
  • background refresh might leave .git/index.lock remaining on shutdown
  • Submodules: Reset did not work on missing submodule if submodule initialization option was not set in Repository Settings
  • GUI:
  • Compare: Apply Lines might add instead of replace lines
  • when cloning using the URL handler, SmartGit was not brought to front
  • strange error message if autoupdate failed to connect to syntevo.com

New in SmartGit 7.2 Build 7101 Preview 12 (Jul 12, 2016)

  • NEW FEATURES, IMPROVEMENTS:
  • Git:
  • Journal:
  • speed-search (message and ID)
  • "Revert" is now also applicable for "ahead" commits
  • GUI:
  • on Windows tables and trees use colors even if selected
  • FIXED BUGS:
  • Git:
  • Changes view: selecting an uninitialized submodules showed error
  • Cherry Pick: in case of conflict, the commit dialog opens empty instead of
  • using the cherry-pick message by default
  • Journal:
  • possible false-positive pushable warning if auxiliary branch is displayed
  • possible internal error for complicated merge structures
  • squashing anihilating commits might result in empty commit
  • Refresh:
  • possible internal error in case of invalid reflogs
  • stashes were not showing up for Git worktrees
  • GUI:
  • Text editor color configuration: not all syntax colors had been read

New in SmartGit 7.2 Build 7090 Preview 11 (Jun 30, 2016)

  • NEW FEATURES, IMPROVEMENTS:
  • Compare: support for dark theme
  • Git-Flow, Finish Feature: commit message template can be configured by setting VM property smartgit.flow.finishFeature.message, e.g. to "Finished feature {0}."
  • parent-less dialogs, e.g. preferences and about dialog on OS X, show up on the monitor where other windows are shown
  • FIXED BUGS:
  • Git, Log, Save As: possible internal error saving to windows drive root
  • internal error launching without configured Git executable, e.g. launching the first time
  • Compare: changing color options in the preferences did not always redraw immediately

New in SmartGit 7.2 Build 7087 Preview 10 (Jun 27, 2016)

  • NEW FEATURES, IMPROVEMENTS:
  • Git:
  • Branches:
  • Checkout: for a remote branch warns in case the local branch is diverged
  • Push to Gerrit (depends on .git/hooks/commit-msg and a remote with server>:29418)
  • Changes: shows details for File Mode only changes
  • Journal: considers path (merge commits) from ahead to behind/auxiliary to better reflect the merge structure
  • Log:
  • Commits: Checkout on a tracked remote branch offers to check out tracking branch
  • Create Pull-Request (Bitbucket, GitHub, Stash): remembers target branch
  • Remote | Properties: edit push URL (if already present in .git/config)
  • Spellchecker:
  • always uses "my-words.dic" in settings directory for storing own words no GUI option any more)
  • suggests name when adding dictionary file
  • FIXED BUGS:
  • Git:
  • Branches:
  • "obsolete" tracking branch may not have been updated properly wrong ahead/behind when merging
  • Changes: possibly outdated EOL-details in title
  • Distributed Review: always fetch submodule review meta data if initialized
  • Journal:
  • merge connector forked to wrong side
  • Move & Squash: may fail with "empty commit message" if commit message starts with #
  • unexpected curving
  • Mark Resolved dialog: branch name start should not be lower-case
  • Refresh (Windows): global core.excludesfile was not honored if %HOME% differed from %USERPROFILE%
  • Stash (automatically): fix for submodules
  • possible authentication problems if credential.helper is configured, but credentials are not yet known
  • Hg:
  • Refresh, Log, ...: broken if defaults.log=-f was configured
  • BitBucket: auto-generated credentials (using OAuth token) didn't work if port was part of remote URL
  • Compare: phantom differences in lines (curly-brace related)

New in SmartGit 7.2 Build 7077 Preview 9 (Jun 23, 2016)

  • NEW FEATURES, IMPROVEMENTS:
  • Git:
  • Branches: shows information for local branch with "broken" tracking
  • Log: performance improvements in case of many tags for file logs
  • Journal:
  • ability to checkout develop
  • Date column with smarter shorting if column is too narrow
  • Log-like coloring
  • added option to use different coloring for auxiliary branch
  • Compare:
  • Apply Lines allows to apply multiple lines for added blocks
  • FIXED BUGS:
  • Git:
  • Commit: for amend-Commit & Push it is not offered to replace remote branch
  • Journal: possible internal error
  • Push: false-positive warning about non-fast-forward for merge commits
  • Hg:
  • Journal: "The command has been aborted because of outdated commits" error
  • GUI:
  • tree-control related internal error, e.g. when moving repository to new group
  • Log, Commits: the comment border of a selected line looked ugly

New in SmartGit 7.2 Build 7070 Preview 8 (Jun 6, 2016)

  • NEW FEATURES, IMPROVEMENTS:
  • Git:
  • Journal:
  • following context commands are supported (especially useful with a selected auxiliary branch): reset, cherry-pick, merge, rebase head to, revert
  • improved layout, e.g., if auxiliary branch is ahead of HEAD
  • Log: option to open submodule log (not just submodule pointer)
  • FIXED BUGS:
  • Git:
  • Journal:
  • auxiliary branch not showing up after merge anymore
  • possible intersection of merge commit's stub with connector to previous commit
  • Repository | Settings: option "Sign all commits" was incorrectly written
  • bundled new Git version (Windows): renamed /etc/post-install tasks because they usually fail because of file system permission problems
  • SVN: - Push: possible internal error
  • GUI: internal error collapsing/expanding tree node

New in SmartGit 7.2 Build 7063 Preview 7 (May 31, 2016)

  • NEW FEATURES, IMPROVEMENTS:
  • Git:
  • Background Fetch:
  • shows executed command and path
  • should be enabled by default for the currently open
  • repositories (because the Journal can show incoming commits)
  • Cherry Pick: Git's cherry-picking state is detected; support for aborting
  • Log: performance improvements for many refs
  • Push: forced-push-delay now needs to be enabled by setting
  • smartgit.push.delayOnForceDialog=true
  • Refresh: symbolic links (junctions) are now also supported on Windows
  • updated bundled Git to version 2.8.3
  • GUI:
  • Branches view: performance improvements for many refs
  • Author columns are shortening if too narrow to show full name
  • FIXED BUGS:
  • Git:
  • Branches:
  • invalid displayed ref count if refs were shown in sections
  • Changes view showed an error for selected uninitialized submodules
  • Index Editor: failed to write index for UTF-16 encoded files (with
  • misleading error regarding mixed line endings)
  • Journal:
  • Move, Move & Squash did not show warning about modifying pushed commits
  • Push Commits was broken
  • having set auxiliary branch to , it was reset to default, e.g.
  • develop, after restart
  • concave jig-saw-puzzle part showed invalid color if row was selected
  • showed tracking jig-saw-puzzle part for non-tracking branches
  • possible non-existent parent connections were shown
  • columns were too narrow when opening the first time
  • Log:
  • commits might still not alight properly to left for higher-priority
  • branches
  • moving annotated tag by drag and drop lost annotation
  • unexpected curves
  • Push: no force check when using push.default=matching and having no
  • tracking configuration for current branch
  • Hg:
  • directory log was broken for Mercurial 3.8
  • SVN:
  • Branch, Delete: incorrectly offered to delete tracked/remote branch which
  • failed anyway
  • GitHub: "Could not connect to repository" error
  • GUI:
  • file) completion did not accept keypad-enter
  • some table columns (e.g. in Commit dialog) were too narrow by default on
  • HiDPI screens
  • internal error launching SmartGit with Java 1.8

New in SmartGit 7.2 Build 7055 Preview 6 (May 12, 2016)

  • NEW FEATURES, IMPROVEMENTS:
  • Git:
  • Cherry pick: uses "commit" option because this preserves author/date even
  • in case of conflicts
  • Changes view: sometimes the changes are not appliable in both directions
  • External tools: default external tool "Fast-forward merge" without
  • confirmation dialog
  • Journal:
  • added Reset as context menu item
  • optionally shows one additional branch
  • remembers table column widths
  • Push: forced-push confirmation dialog now waits a few seconds as reminder
  • Repository Settings: added GPG configuration options, e.g. to sign commits
  • Submodule: Changes view shows details about selected commit(s)
  • Hg:
  • Mercurial 3.7 - 3.8 are supported now
  • FIXED BUGS:
  • Tray: no HiDPI-icons were used
  • Git:
  • Commit: "Bypass commit hook" option did not work for all commit variants
  • Journal:
  • Date column was missing
  • pushed commits could not be modified after preferences option had been
  • toggled
  • pushable (purely local) commits were falsly rejected as pushable
  • Log: pending octopus merge was not properly showing up
  • Push-To-dialog allowed forced push even if not enabled in preferences

New in SmartGit 7.2 Build 7049 Preview 5 (Apr 29, 2016)

  • NEW FEATURES, IMPROVEMENTS:
  • Git:
  • Add Tag: option to sign annotated tag (requires installed GPG agent)
  • Commit:
  • option to skip hook
  • if necessary, forced push is detected
  • http(s) authentication: if a credentials helper already is defined, SmartGit does not use its own credential storage
  • Outgoing view:
  • renamed to Journal
  • shows simplified, compact current branch structure with incoming and pushed commits
  • Compare/Conflict Solver: Apply Line(s)
  • GUI:
  • Files view: added "Relative Path" column as replacement for "Name" and
  • "Relative Directory"
  • replaced several dialogs with "Xxx + Remote" buttons with checkbox
  • Preferences, Authentication: Del key now deletes selected credentials
  • FIXED BUGS:
  • fresh installation did not contain any default tools
  • Compare/Conflict Solver: possible internal errors related to "Apply Selection"
  • Git:
  • renaming directory: might fail if only changing the case (Windows)
  • Log: possible internal error related to priorities
  • Refresh: '?' in .gitignore did not match line terminators
  • submodule refs may become reset unexpectedly

New in SmartGit 7.1.3 Build 6119 (Apr 25, 2016)

  • NEW FEATURES, IMPROVEMENTS:
  • Hosting provider configuration: when pasting the token, leading and trailing whitespace characters are ignored
  • FIXED BUGS:
  • Preferences, Tools, Edit: "Handles: ( ) Files ( ) Directories (*) Both" was always selected
  • http(s) authentication: user names with backslash were incorrectly parsed

New in SmartGit 7.2 Build 7036 Preview 4 (Apr 18, 2016)

  • NEW FEATURES, IMPROVEMENTS:
  • Git:
  • Branches view:
  • ability to delete current branch (which will check out the current
  • branch's commit instead)
  • options to configure display of refs
  • Commit: remembers previous messages in commit-notes history
  • Log:
  • tries to preserve the selected file, even after switching to a different
  • commit
  • improved layout algorithm
  • set VM property smartgit.log.graph.layoutAction=true to provide layout
  • tweak options
  • Pull/others: "remote error: invalid username or password" is recognized as
  • authentication failure and hence the password needs to be entered again
  • Refresh: added VM property smartgit.branch.remoteBranchExcludeRegEx to
  • specify remote branches that should be skipped for performance reasons
  • added View | Show Files From Submodules
  • Preferences:
  • Welcome dialog: show only optionally
  • Tools: ability to recreate default tools
  • Spell checker: doesn't mark file names or directories as invalid
  • Windows installer: asks user whether to overwrite sourcetree:// URL handler
  • if already present
  • FIXED BUGS:
  • Git:
  • GitHub/Git-LFS: "unexpected end of JSON input" when using internal SSH
  • client
  • Log:
  • pushable merge sources might have shown up as pushed
  • Hg:
  • Refresh: internal error if branch had \n in its name
  • SVN:
  • Push: pushing branches with slashes is now rejected
  • File completion:
  • double-click appended full path
  • suggestions could contain duplicates when trying to commit same named files
  • from different directories

New in SmartGit 7.2 Build 7027 Preview 3 (Mar 30, 2016)

  • NEW FEATURES, IMPROVEMENTS:
  • Git:
  • Add Tag: the Push option now only pushes this tag, not all refs
  • Branches:
  • moved options from preferences to options popup menu
  • optionally hide tracked remote branches for Git-Flow refs
  • show ahead/behind information even if branch is non-tracking but
  • has a similar named remote branch
  • Commit:
  • spell checking
  • the dialog allows to select between multiple possible commit
  • messages, e.g. default merge message or previous messages
  • Push: uses --force-with-lease for checked forced push
  • Reset (hard): allows to stash local changes, not just discard them
  • Select Issue from JIRA: added speed-search
  • FIXED BUGS:
  • Git:
  • Log: misleading error message when trying to open log for empty repository
  • Push: remote..push had no precedence over push.default
  • Refresh:
  • possible internal error in case of invalid refs
  • possible internal error in case of invalid stash-reflogs
  • SVN:
  • Branches: ahead commits were broken
  • GUI: after Setup wizard no main window occurs
  • Java 1.9 preview: error about invalid parameter -XX:MaxJavaStackTraceDepth=-1

New in SmartGit 7.2 Build 7005 Preview 2 (Mar 11, 2016)

  • New Features, Improvements:
  • Git:
  • Branches:
  • better support for multi-level branch hierarchies
  • ahead commits are not evaluated if push target != merge source
  • Conflict Solver: if file is considered binary, it though can be forced to
  • be treated as text
  • Fetch More: support for multiple remote..fetch configurations
  • JIRA:
  • Select Issue dialog: option to reset query to default
  • Log:
  • File, Directory log: memory consumption reduced significantly for large
  • repositories, e.g. Linux Kernel; added VM option "smartgit.log.onlyHead"
  • Push (Gerrit-support): support for remote..push configuration
  • Hg:
  • Support for Mercurial 3.7
  • GUI:
  • Compare/Conflict Solver: ability to apply multiple lines to other pane
  • rewrote (file) completion
  • Fixed Bugs:
  • SVN:
  • Checkout: line ending correction did not work properly if "eol" attribute was set, but "text" wasn't

New in SmartGit 7.1.2 Build 6112 (Mar 11, 2016)

  • FIXED BUGS:
  • GIT:
  • Branches: excessively long multi-line tag message could cause freeze
  • BitBucket: fetching pull requests from different repository might fail
  • Commit:
  • possible internal error in file completion
  • Commit Message view: caret reset to first char upon refresh
  • Compare: for external compare the title values were not set correctly
  • JIRA:
  • Push did not succeed if JIRA authentication was cancelled
  • Select dialog: misleading instructions
  • was not available for commercial demo license
  • Log:
  • Compare: might produce an internal error for added/removed files
  • Details view: "on branches" did not show correct branches for file logs
  • Refresh:
  • possible internal error related to "unexpectedly" modified files
  • possible internal error when using .gitattributes with "!filter"
  • configuration
  • MERCURIAL:
  • version 3.6.* was rejected though it works

New in SmartGit 7.2 Build 7005 Preview 1 (Feb 18, 2016)

  • NEW FEATURES, IMPROVEMENTS:
  • Add Branch and others: replace invalid characters with customizable valid char: smartgit.branch.replaceInvalidCharsWith=_
  • Bitbucket, GitHub: support for URLs like [email protected]:accountname/repository.git
  • Push, JIRA Resolve:
  • ability to configure which branch to (not) check $ git config branch. smartgitJiraResolve false
  • shows issue description
  • FIXED BUGS:
  • Changes preview: reduced thread-creation when scrolling file table with keyboard
  • JIRA: failed if bugtraq configuration contained invalid project keys
  • SSH: values from ~/.ssh/config were not applied correctly
  • Stash (on demand): don't try to stash submodule changes as this doesn't work

New in SmartGit 7.1.1 Build 6104 (Feb 17, 2016)

  • NEW FEATURES, IMPROVEMENTS:
  • JIRA: added VM option "smartgit.jira.resolveOnPush": set to false to disable this feature
  • Refresh: shows notification on Linux if ignored directories will be excluded from file monitoring
  • FIXED BUGS:
  • Git:
  • Bitbucket, GitHub: possible OAuth authentication problems if repository URL contained user@
  • Branches view: current-branch character was rendered ugly on Windows < v8
  • error "Environment variable smartgit.logDir undefined" on some systems under special conditions
  • Log:
  • Branches: toggling remote develop may not work
  • Compare: no helpful temporary file names were used
  • Hg:
  • Pull/Push failed for http(s) repository access
  • Refresh: possible internal error for invalid tags
  • strange errors if Hg executable was incompatible

New in SmartGit 7.1.0 Build 6097 (Feb 8, 2016)

  • Support for HiDPI-Screens, e.g. 4k-Monitors:
  • Instead of blurred or tiny fonts and images you now get a crisp display when using a HiDPI-screen like a 4k-monitor.
  • JIRA Integration:
  • When committing files, you may select open issues from Atlassian's JIRA and use it as commit message. When pushing commits, SmartGit will determine affected commits and offer to resolve them for a certain version in JIRA.
  • Support for Git-LFS:
  • The status of GIT-LFS-managed files is showing up correctly now, completing the GIT-LFS integration (GIT-LFS commands were already working prior to version 7.1).
  • GitHub and BitBucket OAuth support:
  • For GitHub and BitBucket, the OAuth web flow has been implemented: you won't have to give your passwords to SmartGit anymore but instead use access tokens which have a tailored set of permissions.
  • The GitHub repository credentials management has been simplified and based upon these access tokens, too.
  • Detection of Problematic Submodule Configurations:
  • If your submodules are configured to use absolute paths, it might be tricky to rename or move the repository to a new location. SmartGit can detect and fix this by changing the absolute to relative paths.
  • Change Order of Sync Command:
  • Often requested, now built-in: starting with SmartGit 7.1 you can define whether Sync should first push, then pull or first pull, then push.
  • Simplified Repository Group Organization:
  • You can organize repositories in groups since a couple of SmartGit versions. Usage is now more intuitive - right-click the repositories and select the target group (or create a new one).
  • Convenient Registration of Subscription Licenses:
  • Up to SmartGit 7 is was necessary, when registering SmartGit, to always use the latest subscription license file. Now it's also possible to register an outdated license file of an uncancelled subscription and have SmartGit automatically fetch the latest file.

New in SmartGit 7.1 Build 6096 RC 3 (Feb 5, 2016)

  • Fixed Bugs:
  • Log (File): did show GitHub icon though integration is not expected to work
  • for non-repository logs

New in SmartGit 7.1 Build 6094 RC 2 (Feb 1, 2016)

  • NEW FEATURES, IMPROVEMENTS:
  • JIRA integration:
  • more specific error messages
  • support for non-classic workflows
  • Proxy: added VM option smartgit.proxy.configureForGit to avoid setting Git
  • proxy but have the https proxy in SmartGit configured to access, e.g.
  • autoupdate
  • FIXED BUGS:
  • Git-Flow: hotfixes were not tagged on master
  • JIRA:
  • possible endless loop when trying to access http server using https
  • Push:
  • master password was requested while the dialog was showing
  • did suggest to resolve issue which were already pushed to non-feature
  • branch
  • resolve dialog did not occur on Commit & Push
  • Index Editor: odd connector display on HiDPI monitors
  • GitHub, Git-LFS: various operations might fail to connect to GitHub

New in SmartGit 7.0.5 Build 5203 (Jan 25, 2016)

  • FIXED BUGS:
  • Git:
  • Cherry Pick, Append SHA: appended 2 SHA lines
  • Commit+Amend, Undo Last Commit did not work on detached head
  • Push: internal error pushing branches with non-remote tracked branches
  • Refresh: internal error in case of corrupt .git/index file
  • SVN:
  • Remote, Delete was enabled though not possible

New in SmartGit 7.1 Build 6090 RC 1 (Jan 25, 2016)

  • NEW FEATURES, IMPROVEMENTS:
  • Log, Changes view: shows file change state in title (modified, added, removed)
  • FIXED BUGS:
  • Log: possible internal errror displaying meta refs
  • Setup: did not preselect "license" file from "default" directory
  • Windows: "Open in SmartGit" (context menu of directories) did not work when invoked from Explorer "background"

New in SmartGit 7.1 Build 6088 Preview 12 (Jan 21, 2016)

  • NEW FEATURES, IMPROVEMENTS:
  • Git:
  • Clone: when cloning only a single branch, "forced" refspec (+) is created
  • Fetch More: remote..fetch refspec is adjusted for newly fetched branches
  • JIRA:
  • shows a reasonable warning in case of too-old JIRA version
  • only available in commercial edition
  • SVN:
  • VM option "smartgit.svn.defaultCommitMessage" to customize, e.g. tag creation message
  • Log (Commits view):
  • only multiple refs are truncated, not single refs
  • Updater:
  • VM option "smartgit.updater.directory" to customize updater's working directory (e.g. if launching executables is not allowed in all directories)
  • FIXED BUGS:
  • Logging: commands with lot of parameters and output lines cause ~current-log.*.tmp to grow excessively

New in SmartGit 7.1 Build 6083 Preview 11 (Jan 18, 2016)

  • FIXED BUGS:
  • GitHub, BitBucket: integrations don't work when using uppercase hostnames
  • Updater: on startup an update check is forced if beta is too old
  • Git:
  • Changes view
  • "Error: ojbect must not be null" when having core.autocrlf=input and selecting a binary file
  • erroneous display of expected line separators with core.autocrlf=input or if file is considered binary by Git, e.g. UTF-16 encoded ones
  • Push: possible internal error when having multiple remotes defined

New in SmartGit 7.1 Build 6078 Preview 10 (Jan 14, 2016)

  • NEW FEATURES, IMPROVEMENTS:
  • GIT:
  • gitconfig: support for branch..pushREmote and remote.pushDefault
  • JIRA:
  • commit message selection support added to Squash, Edit Commit Message,
  • Edit Last Commit Message
  • ability to resolve issues has been moved from commit to push
  • Outgoing: shows pushed feature commits only if they are allowed to be
  • changed by the user (preferences option)
  • Refresh:
  • warn in case of non-relative submodule configuration
  • SSH: reports error instead of hangs if Git requires input
  • Submodules: notification if correct but absolute path is used instead of
  • relative path (which would cause problems renaming/moving the repository)
  • HG:
  • Discard: uses "hg update --clean ." to abort grafting state
  • SVN: uses SmartGit's proxy configuration
  • Check for New Version: notifications about major upgrades can be postponed
  • by 7 days
  • Conflict Solver: ability to pass speaking names
  • External Compare, Conflict Solver: better names for temporary files
  • Windows, OS X: updated Git to version 2.6
  • FIXED BUGS:
  • GIT:
  • Changes view: autocrlf=input not handled properly
  • Commit: if the commit.template file contained a comment, empty lines were
  • stripped from the commit message
  • Git 2.5 worktree-related fixes
  • Git-Flow: releases should be tagged on master
  • HG:
  • Commit: re-added files that were marked for removal (but available locally)
  • Deleting bookmark: checked out bookmark got lost
  • External tools (Windows): environment variable HOME was changed
  • Out of memory error: misleading pointer to smartsvn.vmoptions
  • GUI:
  • some dialogs did not show / or \ but treated them as markup
  • some horizontal checkboxes were misaligned with their label on Linux

New in SmartGit 7.1 Build 6068 Preview 9 (Dec 15, 2015)

  • NEW FEATURES, IMPROVEMENTS:
  • File Monitor: honors ignores to avoid overflows
  • Git:
  • Sync: added preferences option to change order of pull and push
  • Commit, JIRA integration:
  • Get Issue From JIRA remembers now the sort order
  • allow to resolve in multiple versions
  • support for Git's commit.template
  • in commit.template works now also on Windows
  • Cherry Pick: replaced preferences option "Append source SHA" with option for each cherry-pick dialog (except for dragging commits in the Log)
  • "Allow modifying pushed commits": if unselected, "Undo Last Commit" and "Edit Last Commit Message" will reject to operate on pushed commits
  • GUI:
  • About dialog, Licensee page: ability to Register
  • Repository window:
  • simplified moving to other groups using the context menu
  • if all repositories of a group are opened, the group name is shown in the window title
  • FIXED BUGS:
  • GitHub: authentication problem "remote: Repository not found"
  • GitLab: possible internal error
  • Windows, smartgit.exe: bin\smartgit.vmoptions was included 2 times
  • Git:
  • Branches: possible internal error when refreshing
  • Distributed Reviews: possible internal error when creating pull request
  • JIRA integration: archived versions broke sorting
  • Refresh: possible update problem because file monitor events were collected too late
  • Log:
  • possible internal error when opening
  • anchored commits always shows up as pushed
  • Hg:
  • Clone: internal error having run through wizard before for Git repository
  • and stepping back
  • Log: closing an arbitrary branch head did not restore the checked out
  • bookmark
  • GUI:
  • a full toolbar caused the window to not be made smaller
  • Register dialog on startup: possible internal error when it closed automatically
  • Moved to Trash on directory: showed error though successful
  • sometimes ugly wrapped error dialogs

New in SmartGit 7.0.4 Build 5197 (Dec 1, 2015)

  • NEW FEATURES, IMPROVEMENTS:
  • Bitbucket Server 4.0 support
  • SVN: added system property smartgit.svn.scanSubmodulesForNonSvnParents
  • FIXED BUGS:
  • Startup: recurring "passwords could not be read" problem
  • Branches: stashes only showed up if .git/refs/stash file was existing
  • Git:
  • Refresh: false-positive modifications when using 64-bit Git executable
  • External tools (Windows): might not work properly when using 64-bit Git executable
  • Git - Log:
  • possible internal error if repository has GitHub and BitBucket remote and both hosting providers are configured
  • Reveal Commit: did not work reliable for old commits
  • Hg:
  • Compare 2 files: blocked the repository
  • Log (Directories): crazy graphs due to missing merge commits

New in SmartGit 7.1 Build 6056 Preview 8 (Nov 30, 2015)

  • NEW FEATURES, IMPROVEMENTS:
  • Git:
  • Refresh: support .gitattributes "ident" keyword expansion ("$Id$")
  • Hg:
  • Compare: allow to invoke for conflict file
  • automatically create the user's smartgit.vmoptions file
  • Subscription: allows to register valid, but outdated license fetching latest
  • one
  • Windows:
  • Installer: option to run SmartGit after installation
  • Uninstaller:
  • should ensure SmartGit process is quit before starting to uninstall
  • bin\smartgit.vmoption is not created any more allowing complete uninstall
  • FIXED BUGS:
  • Resolve dialog: files were not preselected
  • External tool: possible assertion showing a directory chooser while window
  • has been closed while tool still running
  • Windows:
  • Updater fails to launch for subst-ed drives

New in SmartGit 7.1 Build 6039 Preview 6 (Nov 6, 2015)

  • New Features, Improvements:
  • Support for high resolution graphics (HiRes, HiDPI)
  • Fixed Bugs:
  • Refresh: internal error if .git link file contains CRLF
  • View|Show Staged Files: if unselected, certain conflict files were not shown

New in SmartGit 7.1 Build 6034 Preview 5 (Oct 30, 2015)

  • NEW FEATURES, IMPROVEMENTS:
  • Distributes Reviews: pull requests should show "Last Updated By" information (in tooltip)
  • Git:
  • Branches: tracked remote features should show up in Features category (not in remote), denote tracked remote branches (by gray name)
  • bugtraq: support for multiple "projects" per issue tracker (entry)
  • Log, Files: when invoking Show Changes on an added/removed file pair, compare them against each other
  • Refresh: smudge/clean filters (from .gitattributes) should be honored (necessary for Git LFS)
  • FIXED BUGS:
  • BitBucket: refresh should be tolerant in case parent repository can't be accessed
  • Restart: possible internal error
  • Git:
  • Git Flow: for Finish Feature, remote branch isn't removed even when selected
  • Worktrees: repository might not work anymore after upgrading to Git 2.6
  • Outgoing View, Stage Hunks: "Invalid boolean value: core.autocrlf=input" error

New in SmartGit 7.1 Build 6024 Preview 4 (Oct 8, 2015)

  • NEW FEATURES, IMPROVEMENTS:
  • GUI: table/tree rows on Windows/Linux were too high
  • BitBucket Server:
  • BitBucket Server 4.0 support
  • the SSL client certificate is hidden by default
  • Git:
  • Fetch More dialog: added speed-search
  • Log:
  • Branches: new "Commits" category for revealed/anchor commits
  • Push: allow to push with selection in Graph view
  • GitHub:
  • improved username/password selection for relative submodules
  • request API token using OAuth without requiring password
  • option to use OAuth token directly without creating additional credentials
  • SSH option also present in non-commercial edition
  • FIXED BUGS:
  • GUI: dialog "SmartGit requires a restart" too narrow after sleep
  • Git:
  • Branches: Stashes only show up if .git/refs/stash file is existing
  • Log, Branches: toggling stash on already "lost" head did not show up the
  • stash until refreshed

New in SmartGit 7.1 Build 6021 Preview 3 (Oct 1, 2015)

  • NEW FEATURES, IMPROVEMENTS:
  • Bitbucket: OAuth authentication
  • Git:
  • Background processes don't show process-hanging dialog, but silently kill
  • Commit dialog, JIRA integration: show warning in case of slightly invalid bugtraq URL
  • KDE:
  • usr/bin/konsole is used as terminal for default external tool
  • if oxygen-gtk theme is detected, the launcher script aborts with an error
  • message
  • FIXED BUGS:
  • Git:
  • Refresh: internal error opening bare repository
  • Stage Lines: CRLF was not preserved in repository (special core.autocrlf handling)
  • Changes preview: if single modified file is committed (or discarded), the next modified file was selected but it was not scrolled to 1st change
  • Repositories: the tooltip of a cloning repository showed "Repository is missing"

New in SmartGit 7.1 Preview 2 (Oct 1, 2015)

  • NEW FEATURES, IMPROVEMENTS:
  • GitLab: show namespace instead of owner
  • FIXED BUGS:
  • BitBucket: enhanced authentication broken
  • GitLab: only showed 20 repositories
  • updated SWT to hopefully fixing
  • Windows: incomplete JRE
  • Git:
  • External tools: some Git specific tools were not added on fresh install
  • hanging background processes if no master password had been entered

New in SmartGit 7.1 Preview 1 (Oct 1, 2015)

  • NEW FEATURES, IMPROVEMENTS:
  • added Repository | Search Repositories to search repositories checked out outside SmartGit
  • startup: check for new version to prepare rolling release
  • Git:
  • Commit: JIRA integration
  • Windows: reliable way to kill kill Git process including sub-processes
  • Worktree support for Git 2.5
  • FIXED BUGS:
  • Git: various commands: possible problems with refs/remotes/git-svn and similar
  • branches
  • Hg: strange versions like 3.0+3 were not detected as too old
  • Setup wizard: did not check correctly hg version the 2nd time (after having
  • replaced the hg binary)
  • GUI:
  • Compare connector: scrolled 2 positions on Windows 10
  • a notification could cause the layout to "jump"
  • Other Changes:
  • Windows: updated JRE to 8u60 to correctly detect Windows 10

New in SmartGit 7.0.3 Build 5185 (Sep 25, 2015)

  • NEW FEATURES, IMPROVEMENTS:
  • Log, Save As: creates missing parent directory
  • FIXED BUGS:
  • Atlassian Stash: for SSH clones pull requests might not show up
  • Authentication:
  • authentication failures with http(s) simply failed instead of asking for credentials
  • Commit:
  • File name completion: possible internal error after deleting all text and then accepting the suggestion
  • Git:
  • Executable configuration: internal error if git-gui.exe was specified instead of git.exe
  • GitHub:
  • line comments were created with wrong text
  • wording for 2FA dialog improved
  • Log: possible internal error if repository had GitHub and Bitbucket remote and both hosting providers were configured
  • GitLab:
  • underscores _ were rejected as token characters though valid
  • GUI:
  • Branches view: hosting provider icon did not show up reliable until resize
  • Edit | Customize (Linux): table rows became too flat after changes
  • Outgoing: title (count) was not properly updated when switching to bare or broken repository
  • Refresh:
  • possible hang (jgit infinite loop)
  • Updater:
  • endless loop if updater temp directory could not be cleaned up
  • Windows: update failed checking for read-only file system if SmartGit was installed in root directory (Java bug?)
  • certain failures could produce tons of bug*.zip files

New in SmartGit 7.0.2 Build 5171 (Sep 10, 2015)

  • New Features, Improvements:
  • Atlassian Stash support: added "Use SSH instead of HTTPS" option
  • Hg: http-access is now more robust in case of errors
  • Fixed Bugs:
  • Atlassian Stash support: client certificates did not work
  • BitBucket support: cloning repositories with space in name did not work
  • Git
  • Log: toggling categories like "origin" broken (regression since 7.0.1)
  • Windows: launchers contained invalid dpiAware manifest entry

New in SmartGit 7.0.1 Build 5166 (Sep 9, 2015)

  • New Features, Improvements:
  • External tools (Windows): automatically fix "Open Git-Shell" for newer Git
  • versions like this bundles with SmartGit 7
  • Fixed Bugs:
  • Git:
  • Branches, Push: failed for multiple selected branches with different
  • tracked remotes
  • Changes view: sometimes a refresh scrolled to first change, sometimes not
  • Log (Files, Subdirectories): only ancestor commits of the current HEAD
  • were displayed

New in SmartGit 7 RC 3 Build 5161 (Sep 1, 2015)

  • New Features, Improvements:
  • GitHub: each instance has its own access token
  • Fixed Bugs:
  • Git
  • Conflict Solver: for certain rebase operations the content and the title of the left/right sides were swapped
  • Windows: default external tool to open Git shell used outdated "Git Bash.vbs" instead of "git-bash.exe --cd="

New in SmartGit 7 RC 2 Build 5158 (Aug 27, 2015)

  • NEW FEATURES, IMPROVEMENTS:
  • system property smartgit.core.shortShaLength (default = 8)
  • Windows: Git updated to version 2.5.0
  • FIXED BUGS:
  • GitLab: "Object 'owner' not found." error
  • Hg: Mercurial integration broken for Mercurial 3.5
  • startup: slf4j error message printed to console
  • Git - Log:
  • Save As: when overwriting file in working tree, modification might not
  • show up until refreshed
  • Submodule Add: did not request credentials for absolute URL
  • GUI:
  • Compare, Find dialog: previous text was not preselected
  • Compare: after showing a dialog, e.g. Find, the focus was lost
  • several command's enabled state not refreshed correctly, e.g. after
  • cancelling Commit dialog

New in SmartGit 7 RC 1 Build 5148 (Aug 18, 2015)

  • Git:File table: Working Tree State for unchanged submodules show "As Index" (similar to files)
  • Commit: optionally don't remove leading and trailing whitespace
  • Fixed Bugs:
  • BitBucket integration: team repositories were not showing up
  • Edit Tool dialog: confirmation message field was not disabled initially
  • SVN: fetching of "incomplete" repository is not properly resumed and may result in internal error later

New in SmartGit 7 Preview 14 Build 5144 (Aug 11, 2015)

  • NEW FEATURES, IMPROVEMENTS:
  • GitLab hosting provider: ability to use own server
  • Git:
  • uninitialized submodules always show up in the Files view
  • Hg:
  • Push: ability to push closed heads
  • FIXED BUGS:
  • Git:
  • BitBucket: outgoing pull request might result in error
  • Log:
  • when opened from a Blame, target revision might not be revealed
  • revealing a stash did not work
  • Blame:
  • line number < 10 specified as command line parameter did not work

New in SmartGit 7 Preview 13 Build 5133 (Jul 30, 2015)

  • NEW FEATURES, IMPROVEMENTS:
  • GIT:
  • EOL-modification detection improved (set smartgit.refresh.inspectEOL=true
  • in smartgit.properties)
  • Submodules (Pull and others): honor the "prune" option of the submodule
  • repository
  • Windows: updated bundled Git to version 2.4.5.1 RC4
  • HG:
  • Branches:
  • if multiple heads, head count is shown behind branches
  • shows separate entry for every closed head
  • Bookmarks: when deleting bookmark, optionally delete from remotes, too
  • Log:
  • Close branch works on individual heads in the Graph view
  • File log: denotes revision numbers for refs not actually located on the
  • displayed commit
  • Update on a commit with bookmark asks whether to update to branch or
  • bookmark
  • FIXED BUGS:
  • GIT:
  • external tools did not work with Git 2.4/Windows (bash.exe removed itself
  • from the path)
  • HG:
  • Blame:
  • internal error invoking Log on blame line
  • subsequent lines of same commit showed commit info again
  • Branches: Close on the current branch with multiple heads was disabled
  • now closes the current head)
  • Log: false-positive head markers on many refs
  • Outgoing:
  • several commands update the branch instead of the previously updated
  • bookmark
  • moving allowed to move commit before first commit leaving the repository
  • in corrupt state
  • Refresh: internal error opening empty repository with bookmark
  • Repositories: no outgoing arrow if bookmark was checked out
  • Compare, Conflict Solver:
  • moving caret in line did not scroll horizontally (regression)
  • Ctrl+I inserted tab instead of invoking menu command
  • GitHub: possible internal error requesting password
  • http(s) authentication may not reset in case of errors (regression)
  • Startup silently may fail if update-repository files are corrupt

New in SmartGit 7 Preview 12 Build 5126 (Jul 15, 2015)

  • NEW FEATURES, IMPROVEMENTS:
  • Git:
  • Blame: follows merge source (instead of primary parent) if creation was in merge source
  • Commit: performance improvement (detecting pushed commits)
  • Reset: one global option for the reset type (hard, mixed, soft) instead of repository specific
  • Hg:
  • Push: if bookmark is checked out, it's been preselected for pushing
  • Repository root: show checked out bookmark instead of belonging branch
  • FIXED BUGS:
  • Git:
  • Compare two files with each other: keeps repository in locked state
  • Log:
  • when logging a renamed file in an older, checked out branch, history might end prematurely
  • Reveal:
  • possible internal error
  • does not work if graph is empty
  • after failed reveal, e.g. because Graph was empty, context menu was shown incorrectly without new selection
  • Reset hard: complained about overwriting Index or working tree changes when a submodule has checked out a different commit
  • Hg:
  • Branches view: after "hg update -C" the bookmark was shown as "current" where it just was "active"
  • Discard Cherry-Pick/Merge: after execution checked out bookmark was not checked out any more
  • Merge two heads: failed if bookmark was checked out
  • Outgoing: merge commits were not detected and displayed correctly
  • GUI:
  • fixed tab order and layout in several dialogs
  • Other:
  • launching 2nd SmartGit instead did not open window in 1st SmartGit instance

New in SmartGit 7 Preview 11 Build 5117 (Jul 11, 2015)

  • NEW FEATURES, IMPROVEMENTS:
  • Conflict Solver: when using external tool, showing the resolve dialog is not optionally
  • GitLab hosting provider
  • Git:
  • force English output
  • Outgoing: ability to move and squash the dragged commit when dropping on another similar named commit
  • Log:
  • Details: revealing commits when clicking link improved
  • Performance improvement in case of many refs (tags)
  • Reviews: Jump To reveals invisible Pull Request heads, too
  • Hg:
  • Branches view: draft commits are denoted
  • Bookmark support: push, delete
  • Log:
  • ability to close branch
  • ability to toggle closed branches
  • move bookmark to other commit
  • FIXED BUGS:
  • Autoupdate:
  • proceeds on OS X and Linux even if SmartGit could not be exited, e.g. because a command was running
  • cleanup problems after restarting updated SmartGit
  • Git:
  • switching branches might leave submodule red
  • Outgoing: reselection after moving a commit was broken
  • problems with http authentication (403)
  • Log:
  • Details: possible internal error clicking invalid #-link
  • old branches should not be loaded just by toggling them
  • Refresh:
  • ~/.config/gitignore was not honored
  • /etc/gitconfig was not honored on Linux
  • Hg:
  • branches are not shown as checkout any more if the bookmark actually is
  • Log: did not work if working copy had no valid parent (HEAD)

New in SmartGit 6.5.9 Build 4208 (Jun 19, 2015)

  • Fixed Bugs - Git:
  • Log: possible internal error for insignificant-merge handling
  • Refresh: submodule-related warning notifications were not closable

New in SmartGit 7 Preview 10 Build 5104 (Jun 19, 2015)

  • NEW FEATURES, IMPROVEMENTS:
  • Git:
  • Outgoing: author date is preserved by default
  • Pull (forced update): removed noisy output
  • Hg:
  • Branches: new categories for closed branches and bookmarks
  • Add Branch: extended to create bookmark
  • ability to switch to bookmarks
  • GitHub: performance improvement
  • performane improvement
  • FIXED BUGS:
  • Git:
  • Branches: "Rebase HEAD to" on HEAD did not rebase onto tracking branch
  • Conflict Solver: showed wrong SHA
  • Delete Branch: offered to deleted *local* tracked branch
  • Ignore: explicitly ignoring does not work for multiple files
  • Log: HEAD ref could be shown in "..."-section
  • Push: possible internal error related to reflogs
  • Refresh:
  • missing files marked as assume-unchanged contributed to "modified" state
  • submodules states were not consistent to file states (e.g. "Added
  • Modified" vs. "Added As-Index")
  • SVN - Cherry-Pick: possible internal error
  • Views: drag-and-drop preview showed sometimes non-rectangular form

New in SmartGit 7 Preview 9 Build 5097 (Jun 11, 2015)

  • NEW FEATURES, IMPROVEMENTS:
  • Git:
  • Blame: support for files with UTF-8 BOM
  • Branches view: remotes were unsorted
  • Log: selecting "Recyclable Commits" shows also commits only reachable from
  • stashes
  • Submodule Init: option to auto-initialize SVN submodules
  • Hg:
  • uses only native hg.exe (no Hg4J any more)
  • performance improvements for various commands
  • Autoupdate: better cleanup update cache to save disk space
  • Clone (hosting providers): allow to proceed even in case of API connection
  • problems
  • FIXED BUGS:
  • Git:
  • Log
  • "Recyclable Commits" might not show all commits
  • Reveal Comment: possible internal error
  • Save As: "Before" option failed for renamed files
  • Hg:
  • various comments: possible internal error if command produces much output
  • Autoupdate: had problems with Innosetup related files for the uninstaller

New in SmartGit 7 Preview 8 Build 5081 (May 20, 2015)

  • NEW FEATURES, IMPROVEMENTS:
  • Autoupdate:
  • when configured to only report new versions, allow to trigger the download
  • File Compare: ability to force text display
  • Git:
  • Discard: ability to discard changes in modified assume-unchanged files
  • Refresh: performance improvements (if many ignored files are added)
  • FIXED BUGS:
  • Refresh:
  • tracked files in directories with skipped files may not showed up
  • possible (temporary) "case changed" display (Windows)
  • Hg:
  • possible "unexpected negative size" error processing commands with larger
  • output
  • GitHub: organization repositories were not displayed any more

New in SmartGit 7 Preview 7 Build 5075 (May 18, 2015)

  • NEW FEATURES, IMPROVEMENTS:
  • Hg:
  • repository-specific commands are executed using command server interface
  • GUI:
  • Autoupdate: made behavior more clear from names
  • Filter input field for table: first row is automatically selected
  • Preferences, external compare/merge tool configuration: prefill required
  • arguments
  • FIXED BUGS:
  • BitBucket: possible internal error querying comments
  • Clone: internal error stepping through wizard with Git repo, then going
  • back and stepping with Hg repo again
  • External Tools: GIT_EDITOR must not be overridden
  • Git: - Submodule add: internal error if local directory already exists
  • after closing the wizard)
  • Hg:
  • Apply Stash (Unshelve) even if a stash is Apply-ied, it could be deleted
  • Refresh: internal error related renamed files
  • GitHub: internal error trying to reveal comment on deleted file
  • SVN:
  • Pull: do not try to initialize SVN submodule if no SVN clone

New in SmartGit 6.5.8 Build 4204 (May 13, 2015)

  • FIXED BUGS:
  • Git:
  • Commit/Revert/others: removed submodules may show up as files, too
  • Discard: resetting submodule to index still resetted to HEAD
  • Refresh:
  • removed submodules might not show up
  • skipped submodules contributed to directory "modification" state
  • GitHub: organization support was broken

New in SmartGit 7 Preview 6 Build 5066 (Apr 30, 2015)

  • NEW FEATURES, IMPROVEMENTS:
  • About dialog: button right beside version display to trigger installation
  • directory update manually
  • External tools: sets HOME environment variable, so Git will behave in an
  • external tool the same as inside SmartGit
  • Mercurial - Show Changes now allows to compare 2 selected files, similar to Git
  • Notification display has been reworked resolving window-activation-related
  • problems
  • Output view: optionally shows working directory
  • FIXED BUGS:
  • Git - Log: obsolete heads may remain after refresh
  • SVN - Clone/Fetch: possible internal error
  • Autoupdate: fixed a couple of problems
  • Branches view: category with HEAD was always expanded after a refresh
  • Compare, View settings: "Trim equal start/end of inner-line change" was not
  • remembered correctly
  • GitHub: can't request oauth-token
  • Show Changes: wrong line separator was used when comparing 2 files

New in SmartGit 7 Preview 5 Build 5040 (Apr 17, 2015)

  • NEW FEATURES, IMPROVEMENTS:
  • Git:
  • Clean Up: option to expire reflogs now
  • Distributed Reviews add-on: report server-side errors
  • Log:
  • customizable colors by using the VM properties
  • smartgit.log.graph..(red|green|blue)
  • where value might be
  • Git: tag, branchLocal, branchRemote, branchOther, headArrow
  • Hg: branch, branchClosed, tagLocal, tagGlobal, bookmark, headArrow
  • renamed "Lost Heads" to "Recyclable Commits"
  • Save As allows to save previous/next state
  • SVN:
  • Clone supports trunk/tag/branch mapping even if trunk is missing
  • FIXED BUGS:
  • Git:
  • Changes view: wrong "x" button for HEAD vs. Index comparison
  • Cherry Pick (and other) dialog: possible internal error when closing
  • Distributed Review: were not available in main window
  • Log: possible warning "Missing unknown " when toggling "Recyclable
  • Commits"
  • Refresh: deleted files were not displayed if entire directory is deleted
  • Updater:
  • "checksum does not match" error
  • Check for New Version: obsolete notifications may remain in case of problems
  • possible dead-lock when clicking Exit in the bug dialog

New in SmartGit 6.5.7 Build 4202 (Apr 11, 2015)

  • Fixed Bugs:
  • GitHub: listing of organization repositories broken

New in SmartGit 6.5.7 (Apr 8, 2015)

  • NEW FEATURES, IMPROVEMENTS:
  • GitHub: support for latest authentication changes
  • Rename uses --force option to allow also case-changes
  • Proxy: support for http.nonProxyHosts VM property
  • FIXED BUGS:
  • GIT:
  • Commit:
  • trailing whitespaces must not be trimmed from commit.template
  • Space did not toggle Amend checkbox but selected row in table
  • ff-merge.sh not starting with #!/bin/bash caused problems
  • Log (File, Subdirectory): Insignificant Merges broken
  • Refresh: possible performance problem
  • Repository Settings: could not unset default encoding
  • GUI:
  • Del offers to delete repository group instead of selected file
  • Directory tree: wrong-cased version was displayed in parenthesis for case-
  • changed directories
  • Table column packing did not work correctly on OS X
  • Table filtering: hidden files were shown as first items instead of as
  • last ones
  • Blame: possible internal error showing tooltip
  • External tools: PATH was not configured correctly for launched process
  • if Git or Hg executable path was already part of PATH
  • Updater failed to launch elevated (problem with environment variables)

New in SmartGit 7 Preview 4 (Mar 23, 2015)

  • NEW FEATURES, IMPROVEMENTS:
  • Git:
  • Outgoing view: ability to change author of commits
  • Revert: added vm-property "smartgit.revert.commitMessageTemplate" to
  • customize the commit message; use ${message} and ${sha} for the message
  • or SHA ID of the reverted commit and \n to add a line-break
  • Add or Create Repository: detect repository even if admin subdirectory
  • git/.hg) is specified
  • GitHub: compatibility fix for upcoming OAuth API change
  • GitHub, Stash, Bitbucket integration: notification to suggest configuration
  • FIXED BUGS:
  • Blame: Ctrl+Z accelerator did not work when focus was in file content pane
  • Refresh/other commands: possible hangs related to Cygwin installations (Cygwin Git, Open SSH)

New in SmartGit 7 Preview 3 (Mar 9, 2015)

  • NEW FEATURES, IMPROVEMENTS:
  • Log:
  • Branches view: explicit "Anchor" node to toggle
  • Repository|Add Group: shows warning when group with this name already exists
  • Startup: "--anchor-commit" command line option in addition to "--log"
  • FIXED BUGS:
  • Cherry Pick/Revert: merge commits do not work when view is filtered
  • Stash integration (Atlassian): possible internal error if repository has blank in its name

New in SmartGit 7 Preview 2 (Feb 19, 2015)

  • FIXED BUGS:
  • Git:
  • Branches:
  • obsolete stashes may show up
  • switching repositories may show invalid stashes
  • Stash Integration: authentication failures
  • SVN:
  • Clone: possible internal error

New in SmartGit 7 Preview 1 (Feb 17, 2015)

  • NEW FEATURES, IMPROVEMENTS:
  • BitBucket:
  • advanced integration similar to GitHub
  • option to use either SSH or HTTPS URLs
  • Stash integration
  • Git:
  • gitignore-related performance improvements
  • added View|Show Skipped Files
  • file filter finds skipped files, too
  • Changes view:
  • display of reason why a file is considered as binary
  • ability to force displaying it as text
  • FIXED BUGS:
  • Git:
  • Refresh:
  • possible endless loop
  • skipped (missing) directories might temporarily show up as missing
  • Updater:
  • fixed problems when installing newer version over old version
  • OTHER CHANGES:
  • updated Java to version 1.8.0_31, especially to support the latest timezones
  • updated SWT to version 4.5M5 to fix certain SWT bugs

New in SmartGit 6.5.6 (Feb 12, 2015)

  • NEW FEATURES, IMPROVEMENTS:
  • GitHub:
  • "default" branch is preselected when creating pull request
  • more efficient queries
  • support for upcoming API changes related to organizations
  • FIXED BUGS:
  • Hg:
  • Blame: possible internal error
  • repository management: possible internal error removing a repository that could have been opened in a second window
  • speed-search: internal error entering characters using input method editor
  • startup fails with "SmartGit has been started with elevation" error
  • SVN:
  • Clone: possible problems with svn:special being set
  • push might create a branch "foo+bar" instead of pushing to existing branch "foo bar"
  • text editors: Undo/Redo performed 2 steps when invoked using shortcut
  • Windows:
  • some systems crashed immediately because the taskbar control could not be accessed
  • preferences: obsolete hg executable prevents closing dialog

New in SmartGit 6.5.5 (Jan 20, 2015)

  • FIXED BUGS:
  • Git:
  • External tools: default external tool "Format Patch" failed if output directory contained spaces in path
  • Log: Cherry-Pick and Revert did not work in filtered view
  • Pull: "origin" was not preselected if present and there was no tracked branch
  • Push: possible internal error
  • SVN:
  • internal error if trying to push a new branch

New in SmartGit 6.5.4 (Jan 12, 2015)

  • NEW FEATURES, IMPROVEMENTS:
  • Push: support for "push.default=current"
  • GC invocations have been reduced
  • added VM property "smartgit.branch.tagExcludeRegEx" to improve log-related speed for repositories with a large number of tags by exclude uninteresting tags, e.g. autogenerated ones, by specifying a regular expression
  • FIXED BUGS:
  • Blame: Compare/Log did not work on moved/renamed files
  • Cherry Pick (without commit): ignored the "Append source SHA to commit message" option
  • Commit erroneously considers staged submodules as local changes and hence showed irritating warning
  • GitHub: unable to clone ".wiki" repositories
  • Refresh: problems with file monitor being disabled
  • Tools - a tool configured to use 2 commits, did not offer both "directions"
  • Updater - Window|New Window: might have opened two windows

New in SmartGit 6.5.3 (Dec 20, 2014)

  • NEW FEATURES, IMPROVEMENTS:
  • Commit: option to preselect "staged" files, if those exist and even if a
  • file without index changes is selected
  • Index Editor: made available for unchanged files, too
  • FIXED BUGS:
  • Git:
  • updated bundled Git versions (Windows, OS X) to those which the
  • vulnerability fixes
  • Background Fetch: used Git executable which was set on startup, even if
  • changed later in the preferences
  • Commit:
  • squash-merge did not work for submodules
  • squash-merge option was not available in case of local changes
  • Distributed Reviews: error when right-clicking "Pull-Requests" node in
  • main window
  • GitHub: problems with pull requests if users did not exist any more
  • Log:
  • when stepping through commits where file wasn't changed, no different
  • file must be selected automatically
  • File log: merging node not displayed if file was renamed in merge source
  • regular expression filter did not work
  • Refresh: modification state of submodules was not reset after commits
  • External tools:
  • tools with variables in command, e.g. ${smartGitDir} could not be edited
  • invoking one and cancelling the file dialog showed an
  • "unknown variable ..." warning

New in SmartGit 6.5.2 (Dec 11, 2014)

  • NEW FEATURES, IMPROVEMENTS:
  • Git:
  • Branches: added VM property to configure which "Other" refs to display,
  • e.g. "smartgit.branch.otherRefs=notes;archive"
  • http-proxy: is passed by environment variable now (instead of command line
  • configuration) to make passwords less visible
  • Log:
  • in case of selected merge commit, the IDs are shown above the Changes
  • view to make clear which changes are shown
  • Refresh: more detailed notification in case of detected possible
  • performance problem
  • Autoupdate:
  • made successfully-downloaded-notification closable
  • GUI:
  • improved performance, especially when resizing the Log window
  • FIXED BUGS:
  • Git:
  • Git-Flow: merge should in general be available for feature branches except
  • for HEAD being a special branch
  • Fetch More: did not work for clones of just a single head
  • Refresh:
  • possibly too much refreshing in case of submodules
  • Windows, Linux: may not properly refresh after moving a directory
  • Compare and others: performance problem for large files with a lot of changes
  • Conflict Solver or Index Editor: current-line highlight did not work
  • VM property "smartgit.executable.home" was not always honored
  • GUI:
  • removing group did not update nested, open repository potentionally causing
  • internal error
  • removed Conflict Solver default accelerator because it conflicted with
  • speed-search
  • trying to open a non-existing repository: occurring confirmation dialog
  • was not active
  • OS X 10.10 (Yosemite): removed Window > Full Screen, because maximizing
  • had the same effect

New in SmartGit 6.5.1 (Nov 19, 2014)

  • NEW FEATURES, IMPROVEMENTS:
  • Repository Provider Select Repository dialog: added speed-search
  • upon multiple user request reverted the splash screen
  • FIXED BUGS:
  • Git:
  • Git-Flow: Finish Release did not remove remote branch
  • Refresh: "missing" directories might vanish sometimes
  • Hg:
  • Blame: possible internal error if line(s) at position 0 have been removed
  • Enter on a changed file opened 2 file compares
  • "High memory usage" notification overestimated used memory and hence showed
  • up too often

New in SmartGit 6.5.0 (Nov 14, 2014)

  • NEW FEATURES, IMPROVEMENTS:
  • Log, Compare with Local: explanation added
  • FIXED BUGS:
  • Git:
  • Refresh: possible internal error if Git executable is not configured
  • Distributed Reviews:
  • no details were shown for closed pull requests
  • SVN:
  • Fetch: aborted after a single external failed
  • Pull: svn:externals pointing to HEAD were not updated
  • File monitor (Linux): - possibly broke depending on project structure
  • Licensing: having used the non-commercial license in v6, started evaluation
  • GUI:
  • OS X 10.10 (Yosemite): right-clicking the table header to show the column
  • popup was broken
  • possible internal error if user has changed ui-config.xml manually

New in SmartGit 6.5 RC 4 (Nov 11, 2014)

  • NEW FEATURES, IMPROVEMENTS:
  • Bitbucket: system property "smartgit.bitbucket.useHttps=true" to
  • use HTTPS instead of SSH connections
  • GitHub: system property "smartgit.github.perPageLimit"
  • FIXED BUGS:
  • Git:
  • Commit: default merge message did not show up for empty commits
  • Init: stuck with "incomplete" repository
  • GUI:
  • Log, Files: column widths were reset when opening log in git and hg

New in SmartGit 6.0.8 (Nov 11, 2014)

  • FIXED BUGS:
  • Git:
  • Ignore: "Explicit" option was enabled for multi-file-selection
  • Repositories: bare repositories were shown as modified
  • Hg:
  • Refresh: possible internal error caused by "bad" branchheads cache
  • a bug could produce tons of bug*.ziip files within short period of time
  • Linux: native crash after Linux update (libcairo-related)
  • Password handling was broken with Java 1.8.0_25
  • SSH: if temp directory contained spaces, the built-in SSH client didn't work

New in SmartGit 6.5 RC 3 (Nov 7, 2014)

  • FIXED BUGS:
  • Git:
  • "Fast-Forward-Merge" default tool left staged files when invoked on
  • current branch
  • Log: revealing a commit was broken in rc 2
  • Refresh: "" state remained after cloning an empty repository

New in SmartGit 6.5 RC 2 (Nov 5, 2014)

  • NEW FEATURES, IMPROVEMENTS:
  • Git:
  • Branches:
  • Rename: works now also for the current branch
  • Create Branch from a remote branch: tracking checkbox is unselected when the local branch name is changed
  • Commit messages will only be loaded up to 4kB
  • GitHub: pull request title/description is only separated by newline, not a period
  • Remote|Configure renamed to Remote|Properties
  • "High memory usage" detection will be more tolerant and hence occurs less likely
  • FIXED BUGS:
  • Git:
  • Log: rename detection did not canonicalize line endings
  • Setup wizard: on OS X 10.9+ /usr/bin/git is not verified unless SmartGit "thinks" Git is installed (otherwise OS X will show a dialog asking to install Git though not necessary)
  • Repositories:
  • "" state was lost when switching windows opening a repository group closed repositories inside that group which already were open
  • GUI:
  • accelerators did not work using, e.g., a Russian keyboard layout drag-and-drop of files/directories to input fields was broken
  • Files: internal error sorting for "State" and having "skipped" files
  • Tables: selecting the next item after a previous one had been deleted, did not work reliable

New in SmartGit 6.5 RC 1 (Oct 29, 2014)

  • NEW FEATURES, IMPROVEMENTS:
  • Distributed Reviews: added menu item "Show Closed Pull Request"
  • Log:
  • Commits graph:
  • number of refs in mouse-over-section is shown
  • meta refs only show up in the mouse-over-section
  • FIXED BUGS:
  • Git:
  • Distributed Reviews: Log continues to show pull requests after integration
  • Rename: could not be invoked by pressing F2 on a directory
  • Startup: "Possible refresh performance problem" did not honor already set
  • "smartgit.executable.home" property
  • Hg: (authenticated) http-connections broken
  • SVN:
  • Edit (Last) Commit Message: showed SVN information (e.g. from cherry-pick)
  • Password store: broken for newest Java versions, e.g. 1.8.0_25
  • UTF-8-detection from content was not enabled by default
  • GUI:
  • Notifications: might show outdated notifications
  • OS X 10.10 ("Yosemite"): problems rendering the search input field
  • Tables: selecting the next item after a previous one had been deleted, did
  • not work reliable
  • Windows: personal %APPDATA%\syntevo\SmartGit\smartgit.vmoptions was not used

New in SmartGit 6.5 Preview 8 (Oct 17, 2014)

  • NEW FEATURES, IMPROVEMENTS:
  • Git:
  • support for "--skip-worktree"
  • Pull: for multiple repositories even if some fail, the others are tried to
  • been pulled/fetched
  • Help menu: replaced "Mailing List" menu item with "SmartGit Website"
  • FIXED BUGS:
  • Autoupdate: "Force upgrade installation directory..." option did not work
  • Hg: Refresh did not honor local .hgignore file
  • Linux: internal error dropping file from network share onto file input field
  • OTHER CHANGES:
  • removed check for elevated launch on Windows

New in SmartGit 6.5 Preview 7 (Oct 13, 2014)

  • NEW FEATURES, IMPROVEMENTS:
  • Autoupdate: "New Version" notification should stay after having clicked "Show Changelog"
  • Compare: curly-brace-related optimization to give more appropriate results for complex diffs
  • Repositories: indicate "bare", closed repositories
  • Submodules:
  • Deinit feature
  • Unregister should be visible in context menu and deinit submodule
  • FIXED BUGS:
  • Blame: internal error when invoking Log on "" line
  • Compare/Log > Save As: binary file may be treated as text file (line separator conversion)
  • Fast-forward merge tool used wrong branch
  • Log: showing branch/stash from main window did not work if Log was already open for this repository
  • Refresh: fails to detect changes of repository which became freshly initialized outside of SmartGit
  • Set Tracked Branch: listed meta-refs
  • Submodules: working tree state of "added" submodule was not "As Index"
  • Branches:
  • switching to a remote-only feature branch selected the newly occurring branch under its remote
  • Pull was enabled for "bare" repositories
  • GitHub:
  • Create Pull Request: listed HEAD as target branch
  • error "Object 'body' not found." for special repositories
  • OTHER CHANGES:
  • automatic thread dump logging in case of hanging GUI thread
  • removed default mercurial from Windows installer/portable bundles

New in SmartGit 6.0.7 (Oct 7, 2014)

  • FIXED BUGS:
  • Git:
  • Annotate: possible internal error
  • Commit: possible internal error when dialog is closed too quickly
  • Compare: possible internal error
  • Ignore: internal error when trying to ignore files like "foo[" by name
  • Output view: possible internal error
  • Pull: unselected option "And initialize new submodules" was not honored
  • Refresh:
  • submodule within untracked directory may not show up
  • for sparse checkouts unexpected missing directories were displayed
  • View|Ignored Files: if selected, uninitialized submodules were not shown
  • if View|Unchanged Files was unselected
  • Hg:
  • Branches: branches containing a space in their name were not processed
  • correctly
  • Log (dialog-based): possible internal error on close
  • Refresh: possible internal error
  • SVN:
  • Clone: possible internal error
  • Pull: possible misleading warning about local state in case of
  • uninitialized submodules
  • Push: possible internal error
  • GUI:
  • File path completion: possible internal error
  • Out-of-memory-error-dialog: Exit button did not work
  • Built-in SSH client: did not support user names with domain, e.g. user@domain

New in SmartGit 6.5 Preview 6 (Oct 6, 2014)

  • FIXED BUGS:
  • Compare/Conflict Solver: reading of text files with byte order mark (BOM) was
  • broken, causing it to be written twice on Save
  • Git:
  • Log: might jump back to commit to reveal
  • Hg:
  • Repositories did not show outgoing arrow when opened, but when closed
  • hgignore: ** did not work as expected

New in SmartGit 6.5 Preview 5 (Oct 1, 2014)

  • NEW FEATURES, IMPROVEMENTS:
  • Preferences: removed obsolete option "GitHub: Ask for master password, if required"
  • FIXED BUGS:
  • Git:
  • Revert & Commit: kept revert message until next commit
  • Assume-Unchanged state superseded missing/deleted state
  • Changes view: display was broken for submodules
  • External tools:
  • did not work on closed repositories
  • "Apply Patch" is enabled even without any repository
  • Updater (Mac/Linux): possible problems if elevation was required for
  • previous updates
  • Shutdown-hooks were not invoked causing, e.g., temp directories to not be
  • cleared

New in SmartGit 6.5 Preview 4 (Sep 25, 2014)

  • NEW FEATURES, IMPROVEMENTS:
  • Git - Log:
  • Reveal Commit now works on filtered Commits view to select in graph
  • has Tools menu for general tools
  • GUI:
  • improved drag-and-drop in trees (e.g. to move repositories to other
  • groups)
  • FIXED BUGS:
  • Git - Log:
  • possible interrupted loading when toggling old tag visible, then HEAD
  • redundant refreshing after revealing a commit

New in SmartGit 6.5 Preview 3 (Sep 19, 2014)

  • NEW FEATURES, IMPROVEMENTS:
  • Git:
  • Conflict Solver: show resolve-like dialog for binary files
  • File Compare: did not check out Index and HEAD states with correct line
  • separators
  • Git Flow:
  • option to configure tag name for Finish Release
  • support for more than one release branch at the same time
  • GitHub:
  • optionally add "upstream" remote to simply fetch from forked repository
  • list also starred repositories
  • Pull: avoid confusing "You are in 'detached HEAD' state." message
  • Resolve: option to open Conflict Solver
  • Updater:
  • more details are displayed in case of error
  • Windows: uses elevation-enforcing executable instead of script
  • FIXED BUGS:
  • Git:
  • Background Fetch/Poll: optiion to disable certain remote was sometimes not
  • honored
  • Changes: EOL information was shown even for binary files
  • External tools: if no confirmation was required, ${commit} was still passed
  • as second parameter in case of single selection
  • File Compare, Log|Save As: did not check out Index and HEAD states with
  • correct line separators
  • Log:
  • Details: clicking commit link did not find it in Commits view
  • Refresh may fail to pick up changes during/after having merging/cherry-
  • picking/rebasing/reverting
  • Revert and Revert & Commit did not produce the same commit message
  • Review: Integrate with rebase gave internal error for remote pull request
  • branch
  • SVN:
  • Clone mapped svnkit:entry properties to .gitattribute
  • Linux (non-Ubuntu): ugly looking GUI with incorrect colors
  • Updater:
  • did perform elevation check even for < Windows Vista
  • on startup, when cancelling elevation, SmartGit hang without GUI
  • on Windows, it failed when SmartGit was launched from 64-bit Java
  • git, mercurial and jre directories were created even when no-JRE bundle
  • was installed
  • possible internal error

New in SmartGit 6.5 Preview 2 (Sep 12, 2014)

  • New Features, Improvements:
  • Log: External tools: refs-tools work also on Commits
  • Preferences, SmartGit Updates: option to force upgrade of installation directory even if patches would be sufficient
  • Repositories: remember group expansion states
  • beside smartgit://cloneRepo/ sourcetree://cloneRepo/ is now also supported
  • Fixed Bugs:
  • Git:
  • Blame: invoking Log did not select the commit any more
  • External tools:
  • default tool "Apply Patch" did not show up in Tools menu
  • default tools "Merge Directly To" and "Forward Merge" did not work on SHAs
  • Hg:
  • Branches containing space in their name were not processed correctly
  • GUI:
  • Accelerators: if a compare editor was focused, e.g. Ctrl+Alt+1/2 did not work
  • Notifications: when two notification were sent to quickly after another, only the first one was shown
  • Setup:
  • did not work correctly when having used the non-commercial option in a previous version
  • Register button might kept enabled though no file has been entered, resulting in an internal error when clicking it

New in SmartGit 6.5 Preview 1 (Sep 10, 2014)

  • New Features, Improvements:
  • support for automatically updating the installed bundle, even to update to new major versions - requests admin privileges if necessary
  • improved memory consumption behavior
  • new way to define VM options, e.g. to change memory settings, on Linux (~/.smartgit/smartgit.vmoptions) and OS X (~/Library/Preferences/SmartGit/smartgit.vmoptions)
  • Git:
  • Add Tag: made clear that creating an annotated tag when providing a message
  • Background Refresh:
  • "Fetch open repositories" is now orthogonal to "Fetch closed repositories" instead of sub-option
  • should not run while Git is processing a command outside SmartGit
  • skip if up-to-date according to ls-remote information
  • if configured to not add untracked files on commit, untracked files will not cause the background refresh to show up as local changes
  • Blame: shows file path if it had been renamed/move in history
  • Branches:
  • Checkout remote branch: offers to switch to local branch that already tracks the selected remote branch
  • Configure on a remote: replaces Edit URL, but also adds options to disable background operations
  • Tags: ability to checkout and open log
  • Stashs: ability to open log
  • Checkout: removed --quiet flag to support post-checkout hooks
  • Cherry-pick: support for -x option
  • Conflict Solver:
  • don't got to next change automatically when applying to conflict block
  • offer to stage as "deleted" if resulting file is empty
  • Distributed Review:
  • Log shows only the most recent pull request head; obsolete heads can be toggled from the Details view
  • External tools:
  • support for refs/commits, optional confirmation
  • default external tools for
  • creating and applying patches,
  • fast-forward merge to tracked, non-checked out branches
  • merge changes from one branch to another without checking out (requires Python3 to be installed)
  • ability to toggle executable bit (Windows)
  • are invoked in repository root where possible
  • Log:
  • ability to filter by file names/file content
  • Cherry-Pick and others: when selecting a merge commit, show more information about the parents
  • Review: Path column includes line number of comment
  • for 2 selected commits, the Changes view now shows the left and right SHA
  • improved responsiveness while (long-running) refresh is in progress
  • Files: submodules have a different icon
  • Move/Rename commands
  • Pushable Commits: Edit Commit Message preserves message now in case of failure
  • Refresh: possible reasons for bad performances (e.g. repository located on symlinked directory) are reported
  • Hg:
  • Backout support (equivalent of git revert)
  • Shelves: use "shelve" instead of "hgshelve" extension
  • Log:
  • add context menu to Files table
  • SVN:
  • Clone: supports cloning trunk/branches/tags in combination with minimum revision
  • Compare:
  • tries to detect ("guess") UTF-8 encoding from content
  • improved algorithm to improve results for more complex file changes
  • Setup:
  • detection of msysgit installation from its registry items
  • GUI:
  • Repository, Open in New Window: ability to invoke for repository opened in current window
  • option for CamelCase (smart uppercase) search
  • reworked accelerators, e.g. a menu item with Del accelerator will not be invoked when a text field is focused that handles the Del key
  • Notifications: buttons to show previous/next notification
  • optionally ask for master password on application startup
  • table: if one item has been removed, the next row is selected automatically
  • Fixed Bugs:
  • Blame:
  • Log did not work on dead file
  • Built-in SSH client: possible internal error when trying to use a defect private key
  • if Git executable was incorrectly configured, the preferences were not opened automatical
  • assume-unchanged files were not displayed when View|Unchanged Files was selected
  • Cherry-Pick and other dialogs: command buttons had no mnemonic
  • Distributed Review:
  • performance problem fixed (Push, Sync)
  • if integrating a pull request failed, aborting the rebase left the working tree with a checkout commit instead of a branch
  • External tools: PATH was not configured correctly to contain the Git/Hg executable directory when showing command output
  • Notifications: were not shown when they occurred while a windows was minimized and had been restored
  • Rebase: did not update progress bar
  • Repositories: when cloning a new repository, "missing" was displayed
  • SVN: "snapshot" submodules were not updated in case of URL mismatch

New in SmartGit 6.0.6 (Aug 27, 2014)

  • NEW FEATURES, IMPROVEMENTS:
  • SSH: added VM property smartgit.ssh.defaultUser to configure SSH user name to use if not specified in the URL
  • Submodules: added VM property smartgit.core.push.recurseSubmodules=on demand to push submodules on demand
  • FIXED BUGS:
  • Add or Create Repository: opens an already open repository in second window
  • Log:
  • Details: should display information in case parent commits are not yet loaded
  • Commits: internal error dragging ref over merging node Log Commit Chooser: internal error invoking a Copy action on a virtual e.g. merging) node
  • Review:
  • possible error in case of invalid user email
  • possible internal error in case of strange characters (like \n) in user name
  • entering invalid email address may result in error after editing a user
  • commit message lost after integrating a pull request using "Merge"
  • Integrate should not fast-forward merge when using option "Merge"
  • when syncing Review changes without having pushed local pull request branch, corresponding pull request may vanish temporarily in the remote repository
  • should not update pull request without having a local branch (may result
  • in error "could not resolve commit '

New in SmartGit 6.0.5 (Jul 28, 2014)

  • NEW FEATURES, IMPROVEMENTS:
  • Branches view: tracked Git-Flow branches also show up for corresponding remotes
  • Conflict Solver: now works also on "deleted-by" conflicts
  • Distributed Review: preserves commit-refs for removed pull requests/comments (can be turned off optionally)
  • FIXED BUGS:
  • Git:
  • Blame: internal error related to moved files
  • Conflict Solver: did not evaluate line separators from .gitattributes
  • Distributed Review: possible error (multiple merge bases for and commit>" when working with multiple remotes
  • Index Editor: "invalid boolean value" error message on Save if core.safecrlf=warn
  • Push To: forced-pushing to non-existing remote branch failed
  • Rebase: Continue complains about modified submodules
  • Refresh: core.excludesfile specified in .git/config was not used
  • Hg:
  • Apply Stash: did not apply the last created one shelve (shelves were sorted alphabetically instead of based on creation time)
  • Blame: possible internal error for files with multiple origins
  • Git repository's spinning wheel did not spin when refreshing in background
  • SVN:
  • Clone: possible internal error related to .gitattributes mapping
  • GUI:
  • possible slowness/hang when too many windows were open
  • several GUI parts, e.g. Log/Details: click, drag-select and release over a
  • link did trigger the link action

New in SmartGit 6.0.4 (Jul 8, 2014)

  • New Features, Improvements:
  • Git:
  • Deleting a remove branch now also disables the tracking of the corresponding local branch
  • Cherry-pick: added VM option smartgit.cherrypick.xOption - set to true to pass the -x option to the cherry-pick command
  • Fixed Bugs:
  • Git:
  • Commit: "Stages files" only shows a subset of all files when committing from a non-root directory
  • Log, Details: possible internal error when hovering over SHA-link
  • GitHub:
  • problems fetching pull request if remote URLs differ in case
  • Log: Sync did not work
  • Review:
  • "Neutral" option showed up as +1 instead of +0
  • Sync not enabled after initializing database
  • meta "commit"-refs might not be created properly if sync overlaps with someone else syncing
  • Pull: possible misleading error message in case on of multiple remotes is down
  • GUI:
  • Changes views: misleading "binary content" message for large text files
  • work-around for the SWT bug
  • Drag and drop: internal error dragging commits from the Log to the Outgoing view
  • various operations: problems with files locked exclusively by other applications
  • file monitor (Windows): possible internal error
  • other sporadic bugs reported by the crash reporting

New in SmartGit 6.0.3 (Jun 17, 2014)

  • NEW FEATURES, IMPROVEMENTS:
  • Push To: is not available for remove branches
  • Windows installer: made directory context menu item "Open in SmartGit/Hg"
  • optional
  • FIXED BUGS:
  • Git:
  • Background Fetch: may not be invoked (just polled)
  • Changes view
  • clicking side-buttons sometimes does not work
  • possible internal error clicking [

New in SmartGit 6.0.2 (Jun 6, 2014)

  • NEW FEATURES, IMPROVEMENTS:
  • Git:
  • Background Fetch: introduced .gitconfig option "remove..smartgitBackgroundFetch=false" to exclude remote from background fetching
  • FIXED BUGS:
  • Git:
  • Background Refresh: endless spinning wheel for one repository
  • Commit Message tool window related internal error
  • Distributed Review:
  • Add Comment: rendering problems when using @
  • Integrate Pull Request may not offer Rebase, giving strange reason
  • Git Flow: possible internal error when trying to finish release
  • GitHub/Distributed Review markdown:
  • possible internal error trying to display large comments (parsing error)
  • incorrect markdown rendering for bold+italic
  • Log:
  • File log: possible internal error
  • Outgoing: paths of submodules always showed up as "."
  • Refresh:
  • after commands failed to pick up changes if only .git/HEAD file was affected was not enabled when an invalid Git executable was configured
  • Smart Open (double-click): invoked Conflict Solver instead of Resolve for
  • conflicting submodules
  • Hg:
  • Add: did not allow to add ignored files
  • Rebase: possible internal error in case of invalid HEAD
  • General:
  • Outgoing: dropping before first commit was not possible any more
  • Repositories: Remove Repository was enabled if opened in another window causing internal error
  • Shutdown: possible internal error

New in SmartGit 6.0.1 (Jun 2, 2014)

  • NEW FEATURES, IMPROVEMENTS:
  • BitBucket provider: show Owner column
  • prominent confirmation for sending 'crash footprints'
  • Hg:
  • Outgoing: show SHA column
  • FIXED BUGS:
  • SVN: Commit: possible internal error related to hook-return message
  • SSH: read-timeout was not configured, now it is 1 hour
  • Exit: possible internal error
  • Git:
  • GitHub:
  • Drop Pull Request: might result in internal error:
  • external changes to refs/pulls may not be reflected in the Branches view
  • outgoing pull requests may not show up in the Branches view
  • possible internal error if username or password contains newline characters
  • Outgoing: might display outdated data when selecting repository group
  • Refresh: possible internal error if repository becomes invalid during refresh
  • Hg:
  • Outgoing:
  • squashing initial commits results in unversioned working copy:
  • moving initial commit was allowed
  • possible problems due to outdated commits being still displayed
  • GUI:
  • possible internal error related to obstructed files
  • Welcome dialog: internal error if repository name or directory path contains \r
  • Preferences:
  • Executables page: trying to show an error when verifying executable resulted in internal error
  • Generate GitHub Token dialog: possible internal error when closing

New in SmartGit 6.0.0 (May 28, 2014)

  • FIXED BUGS:
  • SVN: memory leak for various commands
  • Git:
  • Discard: did not work for submodules
  • Git-Flow configure: when trying to configure Light mode, error "'' is not valid branch" could be shown
  • Log: possible internal error dropping ref onto "Merge" node
  • Refresh: possible internal error
  • Submodule|Resolve: possible internal error if submodule was invalid
  • GUI:
  • Bug dialog: Force Exit could cause deadlock
  • Edit|Customize: "Menu Item" column was not wide enough to fit all items
  • Missing repository: possible internal error when deleting missing repository

New in SmartGit 5.0.10 (May 27, 2014)

  • Fixed Bugs:
  • Blame: internal error while navigating
  • Changes view
  • staging a block does not honor "filters" (.gitattributes)
  • staging/discarding chagnes does not work if core.safecrlf is set
  • Commit (SVN): possible internal error
  • GitHub:
  • internal error if the current branch tracked another local branch
  • possible internal error when querying pull requests (related to upper/lower
  • case mismatch of user and repository names)
  • Log:
  • possible internal error when opening, related to file monitoring
  • possible internal error while drag and drop
  • search input field: when entering something matching the table did not
  • repaint without connectors
  • Refresh: possible internal error related to submodules

New in SmartGit 6 RC 3 (May 23, 2014)

  • NEW FEATURES, IMPROVEMENTS:
  • Background Poll/Fetch: poll/fetch after master password has been entered
  • Exit: try to abort background processes
  • ability to register zipped license file
  • FIXED BUGS:
  • Compare: possible internal error related to scrolling using wheelmouse
  • Setup: some pages were empty
  • Shutdown: possible internal error
  • Linux/OS X: the title did not show paths in HOME with leading ~/
  • OS X: some controls were cut-off
  • Windows: editable combobox showed initial content often truncated
  • Git:
  • Creating a new repository: did not initialize when a repository was already known for the specified directory
  • Background Poll/Refresh: sometimes stopped working
  • Branches view: possible internal error
  • Clone: possible internal error cloning a Git repository at a location where SmartGit expected a Hg repository
  • Drop Stash: possible internal error
  • Merge: platform encoding was used instead of UTF-8 to read/write .git/MERGE_MSG
  • Output view: possible internal error when moving commits
  • various commands: possible internal error caused by invalid config values
  • Log: could not open Log for submodule gitlink and submodule repository at the same time, and Details: clicking SHA was broken

New in SmartGit 6 RC 2 (May 16, 2014)

  • NEW FEATURES, IMPROVEMENTS:
  • Background Fetch: if Fetch is configured, repositories should still be polled every 5 minutes (instead of just every hour)
  • Branches: tooltip for annotated tags should display tagger's name and email in one line, as for author and committer
  • Changes: after staging all changes, view should automatically switch from Index-WorkingTree to HEAD-Index
  • Preferences: option to disable sending of stripped down stacktraces
  • Resolve: in case of rebase, "ours" and "theirs" should be swapped the same way as for the Conflict Solver
  • Starting a new instance should reopen last repository as double-clicking the tray icon does
  • FIXED BUGS:
  • Refresh: possible "ambiguous argument 'HEAD': both revision and filename" error
  • Add Tag: annotated tags should be written with "UTF-8" encoding instead of ANSI
  • Branches:
  • possible internal error related to \r in tag messages
  • Remotes|Delete: possible assertion trying to delete remote
  • Git-Flow:
  • after configuring Git-Flow, it did not offer any Git-Flow command until manually refreshing
  • possible internal error on Start Feature
  • Shutdown: possible internal error
  • Notifications: couldn't be opened when clicking (Ubuntu 12.04)
  • Pull multiple repositories: submodules were not reset as for pulling just a single repository
  • Rebase: interactive Rebase couldn't be continued
  • Refresh/various commands: possible internal error related to invalid ref-names
  • Repositories: Move Into Group should not be available for top-level repositories
  • Refresh:
  • internal error if repository contains file with \r in its name
  • possible internal error after repository has been removed/became invalid immediately before
  • (Windows, Mac): sometimes failed to update file states after invoking a command
  • Review:
  • Initialize: "Initialize Remote" option should be available even if a remote has smartGitID set in .git/config, but still missing refs/meta/smartgit/review
  • safer file structure
  • GitHub:
  • possible internal error related to initial refresh (from server)
  • refresh did not work after adding a comment
  • Submodule:
  • Initialize: internal error if .gitmodules does not contain URL for submodule
  • Unregister: failed with "Please, stage your changes to .gitmodules or stash them to proceed"

New in SmartGit 6 RC 1 (May 8, 2014)

  • New Features, Improvements:
  • GitHub integration: option to use either https or ssh repository URLs
  • Review:
  • option to dispose database
  • smarter click action for Preview comments
  • support for multiple approvers
  • Bug dialog: Send Directly button with pre-filled email address
  • Fixed Bugs:
  • Branch Browser: possible internal error
  • Clone/Fetch/Push: "counting objects" should be output to status bar
  • instead of Output area
  • Edit Comments: resize problems
  • Log/others: possible internal error in combination with annotated tags
  • Review: possible duplication of Pull Request (contents)
  • Shutdown: possible internal errors
  • Tools: didn't work on files selection any more
  • Various possible purely UI-related errors

New in SmartGit 6 preview 9 (May 2, 2014)

  • New Features, Improvements:
  • Checkout: in case of unversioned files, ask whether to stash them (otherwise
  • switching branches might abort)
  • when creating new repositories, e.g. by using drag and drop, don't append
  • number suffixes by default
  • Refresh: should not (read-only) access files in ignored directories
  • Fixed Bugs:
  • Compare: internal error when trying to export HTML for binary file diff
  • Conflict Solver: internal error switching layouts
  • possible internal error opening bare repository with invalid HEAD
  • Log: possible internal error (ConcurrentModificationException)
  • File watcher (Linux): internal error
  • GUI:
  • endless focus cycle between Files table and its filter input field

New in SmartGit 6 preview 8 (Apr 30, 2014)

  • New Features, Improvements:
  • Annotate/Blame: when using --blame command line option, ability to pass
  • line number to scroll to: --blame /my/file.txt:123
  • Refresh: optionally refresh when SmartGit is in background
  • Review: pull requests which are updated (due to new commits) are put into
  • "Pending" state again
  • GitHub/Bitbucket: changed fingerprints now can easily accepted
  • reworked default perspectives
  • automatically send stacktraces of internal errors to syntevo.com
  • Fixed Bugs:
  • Resource leak: not all resources were correctly disposed on exit
  • Log: memory leak
  • Refresh (Linux): did not work for repositories on symlinks
  • Review:
  • Configure: internal error when trying to initialize remotes and all remotes
  • were already initialized
  • Sync: error when trying to sync pull request deletion for already deleted
  • branch
  • possible "Commit xyz was not found in repository" error message
  • refs/meta/smartgit/commit-refs might become lost
  • Copy Path and others wer broken for file selections
  • OS X: "git-credential-osxkeychain dies of signal 11"
  • Notifications in multiple windows were shown with wrong z-order
  • GitHub icon: was not recognizable with dark themes

New in SmartGit 6 preview 7 (Apr 18, 2014)

  • New Features, Improvements:
  • Background tasks:
  • should give more precedence to foreground tasks
  • should not run concurrently
  • Clone: can be cancelled
  • Compare: currentline-highlight is optional
  • External Diff Tools: temporary files should be set to read-only
  • Log:
  • works on bare repositories
  • Comments: background color is configurable
  • System property "smartgit.repositories.removeMissing" to get rid of
  • missing repositories on startup
  • Fixed Bugs:
  • Blame: possible internal error when hovering over info-gutter
  • Branches view (OS X): Octocat did not show up until tool windows was
  • resized
  • File System Monitoring (Mac OS): may fail if path to repository
  • contains uppercase characters
  • GitHub: possible internal error related to updating Branches view
  • gitmodules: partial support for "ignore=all"
  • Linux: tiny popups (e.g. "no more changes" in the Changes view)
  • were only visible a very short time (< 1s)
  • Log:
  • Files table should always be empty in case of 3 or more commits
  • selected
  • Cent OS: by default, the table columns were too narrow
  • Preferences: possible internal error after toggling GitHub integration
  • Push: if repository has no remote, Remote|Add-dialog occurred on top
  • of error dialog, hiding it
  • Refresh (after commands): sometimes not invoked if file monitor is
  • disabled (or could not be loaded)
  • Repositories view: too many operations were enabled for mixed
  • selection of open and closed repositories
  • Reviews: Reply should not contain original comment text
  • Sync: did not update the repository state correctly
  • Various commands: internal error when command output contains \r
  • Windows: logging out or shutting down did not invoke shutdown hooks,
  • like cleaning up temp-directories

New in SmartGit 5.0.9 (Apr 9, 2014)

  • Fixed Bugs:
  • Compare/others: possible internal error on text completion (Ctrl-Space)
  • GitHub: certificate error
  • Linux launcher: fixed warning about non-existing
  • usr/lib/jvm/java-7-openjdk-i386/jre/bin/java
  • Notifications popup: sometimes remains visible though having clicked
  • the close button
  • Tree Table: possible internal related to Drag&Drop
  • Various commands: possible internal error related to Output view

New in SmartGit 6 preview 6 (Apr 8, 2014)

  • New Features, Improvements:
  • Log:
  • Reveal Commit:
  • make select (only) the commit; the new Compare with Selected Commit adds to the existing (single-commit) selection
  • focusses Commits view
  • Add Commit Comment is now present in the main menu
  • Merge: uses short ref name where possible to produce easier readable default commit messages without leading "refs/remotes/" branch prefix
  • Review:
  • Pull requests create merge commit for easier review
  • Sync gives a little bit command output
  • inline comments show no ID any more
  • Git-Flow operations properly update submodules
  • Outgoing view: will remember visible columns
  • Compare: optionally inner-line changes in whitespaces will show whitespace symbols
  • Changes view: navigating using mousewheel and prev/next toolbar buttons now puts the focus into the side of the larger block to make it better readable
  • SmartGit SSH client: ability to limit max. connection count per period
  • Repository search: more advanced name algorithm trying to avoid name duplication using parent directory names
  • Project import: doesn't use number suffixes for directory names
  • Repository search, project import: recently used list is sorted by git/HEAD time
  • Windows installer: directory context menu item to "Open in SmartGit"
  • Fixed Bugs:
  • Background fetch: possible internal error
  • Command line option "--open " caused two windows to be opened
  • Log:
  • toggling display of meta-refs in the preferences did not work until reopening the Log
  • internal error right-clicking empty area in Comments view
  • Refresh: possible internal error
  • Review:
  • push failed due to diverged refs/meta commit
  • replying to comment of another user was not possible
  • possible internal error "Could not resolve commit 'refes/...'" on Rebase

New in SmartGit 6 preview 5 (Apr 8, 2014)

  • New Features, Improvements:
  • Git-Flow: lightweight model supporting only feature branches
  • Git:
  • preferences option to push all tags
  • Review:
  • integration into main window
  • support for different pull-request states, e.g. pending/approve /rejected
  • Pull Requests category shows "my" pull request count
  • Assignee input field supports user alias completion
  • double-clicking a comment jumps to comment
  • GUI:
  • Windows: taskbar item is highlighted if a dialog is shown while SmartGit is in background
  • smartgit.properties: moved property descriptions to online help
  • Fixed Bugs:
  • import of old projects: multiple repositories with same root were imported
  • Git:
  • Background Refresh/Fetch:
  • possible internal error if bare repository has been opened
  • master password was still requested
  • GitHub:
  • Add Comment dialog was broken
  • Drop Local Data did not work after pull request had been deleted
  • Log:
  • possible internal error related to commit messages containing "\r\n"
  • Reveal Commit: might select multiple refs in same category
  • Pull: was not visible in context menu of closed repositories
  • Review:
  • delay/hang when expanding Pull Request category
  • comment commits without ref could be garbage collected
  • pull requests still showed up as "local" after pushing to remote
  • GUI:
  • repaint problems with table columns truncated in the middle
  • possible internal error when Repositories selection changed while the tree control was updated
  • OS X 10.9: color chooser buttons in preferences had mis-aligned icon

New in SmartGit 6 preview 4 (Apr 8, 2014)

  • New Features, Improvements:
  • Git
  • Background check for remote changes: now works for any open Git
  • repository, not just those marked as favorite
  • Fixed Bugs:
  • the portable bundle also tried copying settings from previously installed
  • versions
  • Compare: the current line background color was not unset when unfocused
  • File table name column: icons were vertically misaligned
  • Git
  • Background fetch: asked for master password
  • Background refresh/fetch
  • notification flickered
  • Hg repositories were tried to access as Git repository
  • Commit message dialog: flickered while typing
  • Log: did not refresh after refs/-changes, e.g. after Push
  • Outgoing: did not update correctly when changing selected repository

New in SmartGit 6 preview 3 (Apr 8, 2014)

  • New Features, Improvements:
  • Git:
  • Incoming commits are detected without the need for a potential slow fetch
  • git ls-remote'), especially for open repositories
  • Background fetch:
  • automatically fetch remote changes when idle
  • options to disable, detect, fetch
  • Conflict Solver: left and right panes are swapped for Rebase
  • External directory tools now also can be invoked on closed repositories too narrow file table columns truncate the name now in the middle, e.g. filen...e.txt
  • Fixed Bugs:
  • Git:
  • Log, Details:
  • copying SHA was not possible for GitHub-enabled repositories misleading confirmation dialog when dragging a tag
  • Git-Flow: internal error trying to invoke Finish Feature
  • Output: was disabled when no repository has been opened but commands like fetch could be invoked

New in SmartGit 6 preview 2 (Apr 8, 2014)

  • New Features, Improvements:
  • Repositories:
  • closed repositories: no repository path is shown by default
  • Mark as Favorite: hides now explaining notification
  • Branches:
  • configurable symbol for pull requests
  • Setup wizard: executable page only is shown in case none has been found
  • Fixed Bugs:
  • Branches:
  • did not indicate pull requests without explicit refresh
  • Outgoing:
  • remained empty after opening a project despite of outgoing commits
  • Repositories:
  • internal error invoking Close on empty group
  • internal error closing a window while background-refreshing

New in SmartGit 6 preview 1 (Apr 8, 2014)

  • New Features, Improvements:
  • completely reworked repository management:
  • no more "projects", only named repositories
  • repositories can be organized in groups (one level)
  • all repositories and groups are sorted by name, groups before repositories
  • "favorite" projects are sorted on before groups
  • drag-and-drop to move repositories to other or out of groups
  • drag-and-drop to add repositories
  • open repositories will be reopened automatically on restart
  • Welcome dialog maintains recently used repositories list (including all
  • favorite repositories)
  • repositories indicate local changes, incoming and outgoing changes
  • Git:
  • Pull/Fetch
  • works on closed repositories, too
  • ability to pull from all remotes
  • Log works on closed repositories, too
  • background Refresh/Fetch for favorite repositories
  • distributed Code Review feature (no need for GitHub, paid add-on)
  • Pull request support
  • ability to comment branches
  • ability to comment lines in text files
  • Markdown support for GitHub support and Code Review feature
  • Branches
  • deleting a tracking branch suggests to delete tracked branch, too
  • denotes GitHub pull requests
  • Outgoing view
  • interactive rebase support for auto-stash/auto-apply
  • Log
  • Details view improved
  • Branches|Reveal: does not selects, just reveals commit
  • improved drag and drop autoscroll speed
  • Changes: shows line number in status bar
  • Refresh: ignored, versioned directories are scanned (so contained ignored
  • files can be shown)
  • Reset: warning if local or staged changes would be overwritten
  • Submodules are shown in files table (SHA ID is shown in Changes view)
  • Edit|Copy menu items work on multiple selected files, directories or
  • repositories
  • Merge: uses Git's commit messages by default; to get the "old" shorter
  • easier readable messages, add following line to smartgit.properties
  • smartgit.core.merge.shortCommitMessage = true
  • Switch has been renamed to Checkout
  • Compare:
  • separate coloring and view option for trailing whitespace
  • highlighting for current line
  • stream-lined setup wizard, e.g. it searches for repositories
  • Windows: better looking disabled toolbar buttons
  • launching a browser (e.g. by clicking a link) keeps GUI responsive
  • Fixed Bugs:
  • Git:
  • Log:
  • GitHub comments were visible though disabled in the preferences
  • Clone or Rebase might fails if special refs were involved
  • Push: possible internal error clicking the Push toolbar button very quickly
  • custom HOME environment variable is not overwritten when launching the Git executable
  • file/directory input fields: sorting was unexpected, e.g. "foo-5/" before "foo"

New in SmartGit 5.0.8 (Mar 13, 2014)

  • New Features, Improvements:
  • BitBucket: updated expected fingerprint
  • SVN: trying to clone from CodePlex is now prevented to avoid later problems
  • Fixed Bugs:
  • Git - Log:
  • possible internal error related to Lost Heads option
  • links in Details view were not updated correctly

New in SmartGit 5.0.7.1 (Feb 24, 2014)

  • Fixed Bugs:
  • Log (File): possible empty Log in case of at least two disjoint commit lines in repository
  • Refresh: negated .gitignore patterns might not work properly (regression since 5.0.7)

New in SmartGit 5.0.7 (Feb 20, 2014)

  • Fixed Bugs:
  • Git:
  • authentication: usernames contain @ were not handled correctly
  • Commit: "amend" option was available for new local branches pointing to
  • already pushed commits
  • GitHub:
  • internal error when trying to read comments (invalid date format)
  • integration broken for repositories not belonging to own account
  • Log:
  • HEAD commit might falsely be considered as pushed if HEAD points directly
  • to an SHA
  • Details (GitHub): if commit contains comments, content becomes shifted to
  • the right
  • Refresh:
  • negated .gitignore patterns might not work properly
  • possible internal error related to Git index
  • Hg:
  • Log: internal error closing window too quickly after opening
  • SVN:
  • Clone: possible "Cannot resolve refs/remotes/git-svn" error
  • Push Commits: false-positive warning "It's not possible to push commit
  • hash>' as it belongs to multiple branches"
  • GUI: changes view could be made smaller than its minimum size

New in SmartGit 5.0.6 (Jan 17, 2014)

  • New Features, Improvements:
  • GitHub:
  • in case of multiple github.com accounts, the matching one based on the
  • account is used
  • merge option to just close a pull request (because it has been manually
  • merged)
  • support for pull request "header" comments
  • Pull (SVN): shows remote selection dialog and honors tracked remote, as it's
  • done in case of multiple Git remotes
  • Fixed Bugs:
  • Git:
  • Add Branch: automatic stash did not work when trying to overwrite
  • existing branch
  • Commit: empty merge commit can't be committed when Files view is focussed
  • Git-Flow:
  • cannot be switched off if configured remote != "origin"
  • possible confusion in case of multiple remotes
  • GitHub:
  • merge did not create virtual pull request commits
  • fetching pull request might fail with "Could not determine remote entry
  • for pull request anchor"
  • local pull request refs should be composed from number (instead of
  • internal id)
  • Log:
  • Compare with Local:
  • was disabled when having the first commit selected
  • in the occurring compare window the wrong file name is shown for the
  • Working Tree
  • did not open if HEAD was invalid (e.g. after an orphan checkout)
  • possible internal error in case of invalid HEADs
  • Comments table rows might become too large
  • Git-Flow: "develop" was not layed out in the first column only
  • Refresh: possible internal error related to invalid HEAD
  • Project|Repository Settings: was disabled for missing roots
  • Hg:
  • Log: internal error having a virtual merge commit selected
  • don't modify HOME on Windows
  • did not check \hgrc.d\Paths.rc before adding
  • "web.cacerts" config option
  • SVN:
  • Clone/Pull: possible internal error related to symlink handling
  • Branches view:
  • local branches should be able to get SVN as well as Git remote tracked
  • branch
  • remote branches referring to a Git remote were still displayed below the
  • SVN remote
  • Log, Merge: did not offer to create Merge commit
  • Pull: "can't pull into SVN clone" with multiple remotes
  • Push: possible false-positive 'force' warning when using an additional Git
  • remote
  • various commands:
  • SVN-related warnings for Git remote tracking branches
  • possible confusion when working with additional Git remotes

New in SmartGit 5.0.5 (Dec 20, 2013)

  • SVN: possible internal error when cloning

New in SmartGit 5.0.4 (Dec 17, 2013)

  • New Features, Improvements:
  • Git
  • Bugtraq: compatibility with v0.3 (special link support)
  • GitHub
  • latest pull requests are displayed first
  • merge commit message now defaults to Pull Request title
  • merge option to perform local merge
  • reasonable error message if a command fails because of missing access rights
  • Fixed Bugs:
  • GitHub
  • one page too few has been loaded
  • fetching pull request might fail with "Could not determine remote entry for pull request anchor ..." error
  • reading comments may fail with "Expected line starting with '', '+' or '-'" error
  • Git-Flow: possible internal error when starting a Hotfix or Release
  • Log
  • file log: commits from merge source may be missing if file has been created in merge sources
  • possible internal error related to Files view in case of duplicate file names
  • locally present pull request might have not been selectable nor revealable
  • Bugtraq: invalid configuration caused refresh to fail
  • remotes without "fetch=" refspec were not recognized
  • SVN:
  • Clone/Pull: possible "Connection reset" problems
  • Clone: possible internal error
  • GUI:
  • Branches view: performance problem in case of many refs
  • Compare: "file is too large" displayed too often, reverted back to v4.6 fixed-size limit
  • tree drag and drop: previously selected node was dragged even if the drag has been started on a non-selected node
  • trees
  • icon was not correctly updated on selection change
  • possible internal errors (especially related to the Branches view)
  • default smartgit.properties contained obsolete smartgit.github.url entry
  • SmartGit exited on startup in case .ssh/known_hosts contained invalid entries

New in SmartGit 5.0.3 (Nov 29, 2013)

  • New Features, Improvements:
  • Bugtraq: multiple configurations should be applied in the same commit message
  • Git Flow: configuration should not require Remote, so it works for standalone repositories as well
  • GitHub: token will now be used as password for Git operations, too, so there is no more need to enter the account password
  • OS X: text fields should use Cmd+Return or Keypad-Enter to invoke default button
  • Push: better wording in instructions text
  • Clone: system property "smartgit.core.clone.noHardLinks" to add "--no-hardlinks" option
  • Fixed Bugs:
  • Clone/other operations (SVN): might have failed due to NTLM-related problems
  • Git Flow: might have reported "feature already existing" warning even there is no such feature locally or in the configured remote repository
  • GitHub: might have composed URLs from wrong remote and subsequently failed with "not found" error
  • Log:
  • internal error on Goto Next/Previous Commit in case of many candidate commits
  • possible internal error after deleting repository outside of SmartGit/Hg
  • Refresh:
  • "--skip-worktree" files should not show up at all (instead of
  • showing up as "untracked")
  • should not fail in case of invalid bugtraq configuration
  • Various commands: possible internal error related to trees

New in SmartGit 5.0.2 (Nov 20, 2013)

  • New Features, Improvements:
  • ability to configure completion shortcut for text input fields/editors
  • by default Ctrl+Space) in accelerators.xml
  • Preferences, Commands > Log: options to disable GitHub integration or whether
  • to ask for master-password
  • avatar-server can be configured in smartgit.properties
  • GitHub: support for "[email protected]:project"-URLs
  • Fixed Bugs:
  • Branches:
  • possible internal error invoking operations on directory selection without
  • having local branches in the repository
  • Outgoing:
  • shown commits might be outdated causing internal error, e.g. when using
  • Java 1.6 on Linux
  • GitHub:
  • certain operations fail if cloned URL did not end with ".git"
  • Index Editor/Conflict Solver: possible internal error
  • GUI:
  • tree-control-related internal errors
  • Compare: change stripe could flicker when scrolling
  • Changes view: the gutter showed linenumber 1 even if no file was shown
  • Preferences, GitHub provider Edit dialog: OK button not enabled if Client
  • Certificate input field is empty
  • OS X, text editors/commit message: pressing Up/Down in first/last line did
  • not put caret at first/last position
  • OS X: some table columns, e.g. in the Preferences dialog, were too narrow
  • Windows, Aero theme: strange flickering when opening windows

New in SmartGit 5.0.1 (Nov 7, 2013)

  • Fixed Bugs:
  • Clone: for Non-GitHub hosting providers, account may be displayed with leading slash in table
  • Compare/Change View: possible out-of-memory-error in case of huge text files
  • Log:
  • bugtraq configuration did not work in case of multiple entries
  • Delete Comment: did not ask for confirmation
  • possible internal error after closing
  • revealing commit might not work properly
  • Startup: "settings.xml" of version 4.6 might be considered corrupt if loading gravatars was disabled

New in SmartGit 5.0.0 (Nov 5, 2013)

  • New Features, Improvements:
  • Hosting Provider configuration: the name is not required to add a provider
  • configuration
  • Hosting Provider repository table: uses single selection
  • Fixed Bugs:
  • when upgrading the full setup wizard was shown though not needed

New in SmartGit 4.6.5 (Oct 22, 2013)

  • Fixed Bugs:
  • Ubuntu 13.10: crash at application startup
  • SWT bug: )
  • Git:
  • Git-Flow:
  • internal error if remote branch name consisted only of one character
  • Annotate/Blame: ignored configured encoding
  • gitattribues: "binary" macro was not properly interpreted
  • internal error closing project window while refreshing

New in SmartGit 4.6.4 (Oct 2, 2013)

  • Fixed Bugs:
  • Git:
  • if certain operations are not available on an empty repository, a better
  • information is shown than before
  • Log: for the mergable coloring the graph lines could not be distinguished
  • using dark themes
  • Apply Stash: was enabled with unsuitable selection
  • Branches:
  • Set Tracked Branch failed to configure local tracked branch
  • no incoming/outgoing commit information was shown for local tracked
  • branches
  • Submodule (SVN): Initialize did not pull repository but only HEAD
  • Hg:
  • Branches:
  • potential internal error depending on the displayed branches
  • Push was enabled even if there were no remote configured
  • GUI:
  • potential internal error when opening file or directory chooser
  • Log: resource leak fixed

New in SmartGit 4.6.3 (Sep 2, 2013)

  • New Features, Improvements:
  • Git:
  • Log: virtual "merging" commit is now only displayed if "HEAD" is selected
  • Fixed Bugs:
  • Git:
  • Blame: possible internal error related to "strange" author names
  • Git-Flow, Finish Hotfix: error "not something we can merge" when using
  • quotes in commit message
  • Index Editor: possible internal error when closing to quick
  • Interactive Rebase: fails if a commit with certain message would be
  • cherry-picked (removes line with leading #)
  • Log:
  • Reveal Commit may result in internal error for file logs
  • selected "Insignificant commits" may result in empty graph
  • Hg:
  • Log: possible internal error for file log
  • SVN:
  • error "PROPFIND (forbidden)" in case of inaccessible project root
  • UI:
  • possible sorting-related internal error ("Comparison method violates its
  • general contract!")
  • Text editors, e.g. Compare:
  • syntax-related error when typing with IME
  • autoindenting lines (Enter) ignores character entered with IME
  • tooltip may hide immediately when they would show up partly outside the
  • screen bounds

New in SmartGit 4.6.2 (Aug 8, 2013)

  • New Features, Improvements:
  • Git:
  • Blame: "Changes Since"-highlighting is derived from "read-only" background color to be compatible with dark schemes
  • Fetch More: offers "changes/" refs to allow checking out individual changes from Gerrit
  • Git-Flow Finish Hotfix: merging to develop became optional
  • Set Tracked Branch: trackable branches are sorted naturally
  • Submodule Reset: is applicable on working-tree and index-modified submodules
  • Fixed Bugs:
  • Git:
  • Log, Reveal Commit: did not work for refs which were not part of the history of the currently selected refs
  • Merge: in case of conflicts submodules were not reset
  • Pushable Commits (Git-Flow): internal error in case of certain feature-develop-constellations
  • Push (To): pushing a tag also tried a diverged check
  • Set Tracked Branch: HEAD was offered as trackable branch
  • SVN:
  • Push: a file deletion might create a new empty directory in the repository
  • GUI:
  • Clone: internal error entering one or more blanks for Repository URL and clicking Next
  • Gravatar: problems with e-mail addresses containing upper-case characters
  • Changes view: possible internal error
  • OS X:
  • Preferences, External Tool definition: *.app as command was rejected
  • Log: might not be refreshed correctly after manipulating repository in project window

New in SmartGit 4.6.1 (Jul 16, 2013)

  • New Features, Improvements:
  • Autoupdate: limit old versions kept to 2 (instead of 5)
  • Log:
  • Details: first parent commit should always be the first item
  • Show Changes: use same accelerator as in project window (F4)
  • Pull: improved error message in case the remote (tracked) branch is removed
  • Open Repository: make more obvious how to create a new repository
  • Fixed Bugs:
  • File Table:
  • context menu: Stage and Unstage were not shown
  • when sorting for "Index State", untracked files should not be displayed before conflicting files
  • Log: possible endless "refreshing" loop for "Lost Heads" selected
  • Project Manager: new dialog will be closed automatically
  • Pushable Commits: possible internal error related to Git-Flow
  • Rebase: did not allow to rebase range onto ancestor
  • Refresh (Hg):
  • possible performance problems related to UI
  • possible performance problems with Mercurial 2.5 repositories
  • Refresh:
  • Git-Flow): warning message "Could not resolve commit 'refs/heads/master'." after switching to hotfix, if there is no local master
  • internal error in case of corrupted $GIT_DIR/logs/refs/stash
  • Stash On Demand: should not use --keep-index
  • Window: Maximized state was not restored reliably

New in SmartGit 4.6 (Jul 4, 2013)

  • Fixed Bugs:
  • Git-Flow Finish Feature/Integrate from develop: should not offer
  • rebase if tracking and forced push is unselected
  • Pushable Commits: Outgoing branch commits (gray) were not properly
  • calculated for non-tracking feature branches
  • Startup (--log): "Path not found" error when trying to open Log for
  • repository root

New in SmartGit 4.6 RC 4 (Jul 4, 2013)

  • Fixed Bugs:
  • Documentation: section on "Outgoing" commits added
  • Merge: if selected, fast-forward merging should be forced
  • contrary to possible merge.ff = false configuration option)
  • Save Stash: "could not determine stash ID" warning if no stash had
  • been created (because there were no local modifications)

New in SmartGit 4.6 RC 3 (Jul 4, 2013)

  • Fixed Bugs:
  • Git:
  • Refresh:
  • internal error if .gitignore file contains global ** patterns
  • patterns in .gitignore must not be interpreted in special
  • way in Git < 1.8.2
  • Log, Add Branch: misleading text
  • File Monitor (OS X): internal error

New in SmartGit 4.6 RC 2 (Jul 4, 2013)

  • New Features, Improvements:
  • gitignore: support for '**' (since Git 1.8.2)
  • Add Submodule: should not allow to modify URL and only show URL
  • selection combobox if there are at least two suggestions
  • File table sorting: distinguish between "Modified (File Mode)" and
  • other Modified states
  • Git-Flow: configure should optionally allow to switch
  • git-flow support off
  • Log, Set Anchor Commit: should be available in Commits context menu
  • Fixed Bugs:
  • Git: System SSH with plink.exe did not work
  • Git-Flow: internal error when invoking Configure if there is
  • no "origin" remote
  • Mercurial: access over http://-protocol broken

New in SmartGit 4.5.6 (Jun 27, 2013)

  • Fixed Bugs:
  • Git:
  • cloning a git+ssh:// repository was impossible (only worked for Mercurial)
  • Hg:
  • Window|Pushable Commits was missing
  • Window|Branches did not open Branches view

New in SmartGit 4.6 RC 1 (Jun 20, 2013)

  • New Features, Improvements:
  • Git-flow: should remember feature- and hotfix-branch name in case of failure
  • Fixed Bugs:
  • Git-flow: .gitflow file should be honored when initializing git-flow for an already existing repository
  • Log: graph was "jumping" after switching HEAD to another commit (if View|Group Commits By Branch was enabled)
  • Documentation has been updated.

New in SmartGit 4.5.5 (Jun 19, 2013)

  • New Features, Improvements:
  • Various commands (Hg):
  • "color" extension should be enabled to avoid warnings
  • hg-executable should always be forced to work in English
  • Fixed Bugs:
  • Branches view: Push/Push To should be available for untracked branches,
  • even when there is no "origin" remote
  • Check for Updates:
  • should prompt for proxy configuration, if currently configured host
  • is not valid
  • should report "infos" only once
  • Clone (SVN): possible problem
  • Index Editor: possible internal error when saving
  • Log:
  • dialogs did not refresh after switching between branches on the
  • same commit
  • internal error in "Select Commit" dialog, if no commit was selected
  • Pull: sometimes dialog was just showing "and", but expanded area
  • was remaining empty
  • Pull/Push (SSH): may fail for private key passwords containing
  • non-ASCII characters
  • Update (Mercurial): should not move active bookmark
  • Various dialogs: possible internal error when trying to show a dialog
  • on an already closed window
  • Windows launchers: should change working directory to the installation

New in SmartGit 4.6 Preview 2 (Jun 13, 2013)

  • New Features, Improvements:
  • Git:
  • warn before modifying already pushed commits
  • Log: group commits of distinct development lines together (instead of strictly sorting by date)
  • Push: even when using force, check whether the remote repository still points to same commit as the remote branch
  • Git-flow:
  • support for .gitflow configuration file (in working tree) helping to initialize git-flow after a clone
  • if a branch is behind its tracked branch, the user is asked whether to perform the fast-forward merge or abort the command
  • warn when trying to commit directly to master
  • "Pushable Commits":
  • renamed to "Outgoing"
  • columns for author name/e-mail (hidden by default)
  • Reverse-Merge has been renamed to Revert
  • Fixed Bugs:
  • Git:
  • Synchronize/Push: possible internal error
  • Git-flow:
  • possible internal error when configuring
  • context-specific toolbar button: defaulted to configure though already configured (but no branch checked out)
  • Hg:
  • hg/locks could remain when exiting while commands were running
  • Branches:
  • Git-flow-categories: if creating a new feature (, hotfix, ...) the
  • category was not expanded correctly
  • GUI:
  • mouse hover tooltip over truncated table cells also was too narrow

New in SmartGit 4.6 Preview 1 (Jun 7, 2013)

  • Git:
  • Apply Stash: toolbar button shows context menu to directly apply a specific stash
  • Branches: if configured, show Git-flow-specific branches in own categories
  • Clone dialog: prefills URL input field if there is an URL in the clipboard
  • Git-Flow:
  • Configure
  • Start/Finish Feature
  • Integrate Develop
  • Finish Feature
  • Start/Finish Hotfix
  • Start/Finish Release
  • Start Support Branch
  • context-dependent "Git-Flow" toolbar button
  • Pull: smarter Rebase/Merge in case of diverged tracked branch
  • Pushable Commits: show entire feature or hotfix (not just unpushed) commits
  • Rebase: significant performance improvements on Windows, especially for XP
  • fixed location for SSH/http(s) helper scripts:
  • executable flag is not required for temp directory any more
  • no more problems with spaces in temp directory name
  • custom SmartGit-URL support: smartgit://cloneRepo/
  • Fixed Bugs:
  • Git:
  • Branches: Set Tracking did not work for selected local and remote branch
  • Switching to origin/foo/bar branch suggested wrong local branch name (bar
  • instead of foo/bar)

New in SmartGit 4.5.4 (May 29, 2013)

  • Fixed Bugs:
  • Git:
  • Fetch More: possible internal error depending on the selection and the
  • focus
  • Interactive Rebase did not work if smartgit.command.show was set to true
  • Log-related dialogs: internal error when closing in case of invalid HEAD
  • Compare: possible internal error comparing two files with each other
  • Blame: possible internal error
  • internal error opening Git project with Hg repository (after having
  • replaced the repository outside SmartGit/Hg)
  • possible internal error for invalid ~/.ssh/config
  • GUI:
  • internal error for CSS, Wiki and Matlab files
  • possible internal error when a window is moved automatically
  • Cherry Pick/Reverse-Merge dialogs in the Log (for selected merge commit) missed mnemonics
  • Switch to remote branch dialog: initial focus set incorrectly
  • Pushable Commits, Edit Message or Join: if no message, an error icon is shown without text

New in SmartGit 4.5.3 (May 17, 2013)

  • New Features, Improvements:
  • Git:
  • Log: performance improvements
  • Set Tracked Branch: now also allows to *change* a tracked branch
  • Hg:
  • Compare and others: uses "ui.encoding" or "web.encoding" for displaying
  • file contents
  • Branches: renamed "Delete" to "Close"
  • GUI:
  • ability to disable syntax coloring by setting
  • "smartgit.textEditors.syntaxHiglighting=false"
  • ability to show executed commands by settings
  • "smartgit.command.show=true"
  • Help|SmartGit/Hg Documentation: available for all platforms
  • Fixed Bugs:
  • Git:
  • Branches, Edit URL: possible internal error
  • Ignore: did not work correctly for non-US-ASCII file names
  • Log: possible internal error in case of invalid HEAD ref
  • Pull/Sync: possible internal error reading configuration
  • Pull: error output of rebase has not been shown
  • Refresh:
  • if refresh failed because of invalid config file, no appropriate
  • error has been shown
  • possible "Unknown repository format" error
  • possible internal error after executing commands
  • nested repositories were scanned
  • Hg:
  • Log:
  • possible internal error for file log after committing a change to the
  • shown file
  • possible internal error when invoking on sub-directory
  • Query|Open was missing and consequently no tools were shown in the
  • directories context menu
  • GUI:
  • Compare and others:
  • could become slow for text files with verrrrrrry long lines
  • possible internal error related to syntax coloring
  • Pascal support did not work properly
  • Linux: newly added table columns have zero-width
  • possible memory leak while loading images

New in SmartGit 4.5.2 (May 3, 2013)

  • New Features, Improvements:
  • Syntax coloring: added PHP support
  • Update check: added VM property smartgit.updateCheck.oldBuildsToPreserve to limit the number of latest builds which should be locally kept
  • Fixed Bugs:
  • Git:
  • Conflict Solver: could not be opened on "Conflicted (both added)" files
  • Ignore: empty lines and empty comments were not preserved in .gitignore
  • Log-related dialogs: possible internal error when invoking various commands: Git error for old Git versions (1.7.1) remote commands: process-hangs-dialog occurred even if the master-password- dialog was showing
  • Stage Hunk: possible internal error for files with inconsistent line separators
  • Hg:
  • Log:
  • non-ASCII characters of committer names were not displayed correctly possible disjoint trees when logging working directory which points to older commit
  • File log: latest commit not always was displayed
  • GUI:
  • Preferences: possible internal error closing the preferences if an Blame had been opened and closed before
  • Delete was missing in the context menu for files continues "Password store could not be accessed" warning if no passwords were stored

New in SmartGit 4.5.1 (Apr 29, 2013)

  • New Features, Improvements:
  • Commit: when invoked from Commit Message window, it should work on selected directory (not file)
  • Fixed Bugs:
  • Master password possibly becomes reset
  • Setup/Clone: can't access hosting providers like GitHub

New in SmartGit 4.5 RC 3 (Apr 25, 2013)

  • Fixed Bugs:
  • Blame: does not update when changing syntax colors in the preferences
  • SVN: Log - possible internal error related to duplicate stashes

New in SmartGit 4.5 RC 2 (Apr 23, 2013)

  • NEW FEATURES, IMPROVEMENTS:
  • Autoupdate: additional "Show Changelog" link for notification on successful download of new version
  • Change Preview and others (Hg): performance improvements in case of large repositories
  • FIXED BUGS (Git):
  • Commit: "Commit All" option for Merge commits did not commit working tree changes of staged file
  • Compare: Connector repaint problems
  • Delete Remote Branch: inconsistent dialogs for project and log window
  • Pull (SVN): possible internal error for certain (rare) constellations
  • Push (SVN): new branches couldn't be pushed to additional Git remote
  • Setup: possible internal error when configuring hosting provider
  • Startup: problems with --log and --blame options
  • Preferences: master password should not be requested when showing the preferences
  • FIXED BUGS (Hg):
  • Startup (Log, Blame): hangs at splash screen if invalid file has been passed as command line parameter
  • Startup (Blame): possible internal error when calling for invalid file
  • Hg:
  • Refresh (Windows): possible internal error related to case-changed files
  • Compare:
  • horizontal hunk borders might draw over text depending on used font/size
  • [] buttons could be invoked by clicking with any mouse key

New in SmartGit 4.5 RC 1 (Apr 18, 2013)

  • New Features, Improvements:
  • Stash on demand: honors last selected "Add Untracked" option
  • Syntax coloring: support for LLVM, Matlab and Rust
  • Tools menu: added mnemonics
  • Fixed Bugs:
  • Hg:
  • Refresh (Windows): possible internal error related to case-changed files
  • Compare:
  • horizontal hunk borders might draw over text depending on used font/size
  • [] buttons could be invoked by clicking with any mouse key
  • Startup (Log, Blame): hangs at splash screen if invalid file has been passed as command line parameter
  • Startup (Blame): possible internal error when calling for invalid file

New in SmartGit 4.5 Preview 4 (Apr 12, 2013)

  • NEW FEATURES, IMPROVEMENTS:
  • Git:
  • Branches: added Rebase to context menu
  • http authentication uses SmartGit's proxy configuration
  • Pull, Fetch: moved Fetch button to Pull dialog
  • Submodules: Initialize now works also for missing/empty submodules
  • Windows: command line options --log and --blame are now case-insensitive
  • Syntax highlighting: added support for Basic, Dart, Erlang, Mumps, Pascal, R/Rd and Tcl
  • FIXED BUGS:
  • Git:
  • Changes: discarding an inner-line change did not show a confirmation dialog
  • Commit: did warn about untracked/missing files even if they are not selected automatically for commit (according to Preferences options)
  • Fetch More dialog: could become too large
  • Pull and others, stash-on-demand: asked to stash even for conflicts
  • Push To: was not available with focus in Directories
  • Conflict Solver: possible internal error when closing too quickly
  • Syntax highlighting: possible internal error
  • OS X, native SSH-client: if SSH_ASKPASS already is set, it will not set by SmartGit any more
  • OS X: Delete to Trash on a symlink deleted the target instead of the link
  • Windows, High-contrast theme:
  • crash on startup
  • checkboxes, e.g. in Log, Branches, were not readable (yellow on white)
  • Update check:
  • Manual check: when selecting Download, the update was not started immediately
  • possible internal error in case of connection problems

New in SmartGit 4.5 Preview 3 (Apr 8, 2013)

  • NEW FEATURES, IMPROVEMENTS:
  • Git:
  • Blame:
  • improved performance for repositories containing many renames
  • Changes tool window:
  • added context menu entries for Stage/Unstage Hunk/Inner-line Change
  • for unresolved conflicts HEAD is shown instead of nothing
  • "HEAD" and "Working Tree" show tooltip text
  • Commit help to avoid incomplete commits:
  • warn when trying to Push but not committing all changes
  • warn when trying to commit a Merge with unstaged changes
  • Log:
  • Select Next/Previous Commit: commit selection dialog simplified
  • (File): improved performance for repositories containing many renames
  • significant performance improvements and reduced memory consumption for root logs on large repositories
  • Commits: speed search searches for refs, too
  • Mergable coloring now honors anchor
  • anchor commits are highlighted
  • Pushable Commits: performance improvements for large repositories
  • SVN:
  • support for additional Git remotes
  • External Tools: now have accelerator support
  • OS X bundle as .dmg instead of .tar.gz
  • FIXED BUGS:
  • Git:
  • Blame:
  • possible internal error related to renamed files
  • Log:
  • log for renamed file may not load properly or not at all
  • (File): might start with wrong HEAD
  • Merge: double-clicking the toolbar button caused internal error
  • SVN:
  • Delete, Fetch More and Rename were enabled
  • Push: stashes could be duplicated
  • Docking: for some layouts tool windows sizes change slightly with each reopening of the window
  • OS X: added work-around to fix some Java-7-specific bugs
  • tooltips often were hidden too quickly
  • Syntax, Language configuration: *.h was missing from C/C++
  • progress often jumped back and force

New in SmartGit 4.5 Preview 2 (Apr 2, 2013)

  • New Features, Improvements - Git:
  • Pull, Switch, Checkout:
  • if command fails because of local changes, stashing is offered ("Stash-confirmation")
  • Switch, Checkout: moved "Throwaway local changes" option as Discard-option from command confirmation dialog to "Stash-confirmation"
  • Log:
  • double-clicking a commit for non-file-logs to checkout that commit
  • only "Local Branches" expanded by default
  • Tools: support for ${repositoryRootPath}
  • Fixed Bugs:
  • Annotate/Blame: did not show "before" revision of merged revisions
  • Log:
  • newly added branch not selected by default (if stashes exist)
  • "Lost Heads" sometimes did not work
  • Open, Tools: import from old File tools changed order causing another tool to be opened
  • Commit, Select From Log: did not put focus reliable to message input field
  • Project Manager: remained open after opening a project with confirmation dialog
  • auto-update: internal error

New in SmartGit 4.0.5 (Apr 2, 2013)

  • Fixed Bugs:
  • Git - Refresh:
  • possible internal error in case of invalid admin areas
  • possible internal error related to non-ASCII characters in file names
  • switching a submodule from a branch to a commit, directory tree was not refreshed
  • Git - Log:
  • possible internal error trying to open working tree
  • Hg:
  • http(s) repositories for which passwords were not known to Hg did not work
  • Log: sub-directory logs did not work
  • SVN:
  • Push: possible internal error related to creation of .gitconfig
  • GUI:
  • space-toggling of checkboxes in tables was broken
  • Log, Details: bold text could not be copy/pasted on OS X
  • possible internal error speed-searching with Chinese IME
  • Conflict-Solver: possible internal error applying some block

New in SmartGit 4.0.4 (Mar 7, 2013)

  • Fixed Bugs
  • Git:
  • Log: HEAD-ref (in Branches view) was not refreshed on change
  • Refresh:
  • directories containing git meta data might be falsly reported as submodules
  • files within submodules were not refreshed after Commit internal error in case of obstructed directories
  • possible internal error related to file names only differing in composed vs. decomposed UTF-8 encoding
  • possible internal error related to submodules
  • possible internal error related to updating the Pushable Commits
  • SVN:
  • Clone: possible internal error during "joining" phase
  • "git fetch" fails on Windows because of too long command line if there're too many references in the repository)
  • Clone/Fetch: possible internal error "Cannot compute branch binding"
  • GUI:
  • Log: frame title should not include SHA if it's a HEAD Log
  • Pull dialog: possible internal error related to expand-control
  • Push: should output progress
  • Startup: --blame command line did not work, if SmartGit/Hg was already running

New in SmartGit 4.0.3 (Feb 14, 2013)

  • Blame:
  • Goto Preceding Commit should be present in context menu
  • scrolling between commits should preserve caret position
  • Branches view: allow remote selection for tags
  • Log: Blame should be based on selected commit, not HEAD
  • Fixed Bugs:
  • Blame: Goto Preceding Commit did not work properly
  • Branches view: Push did not honor tracked remote of local branch,
  • but always pushed to 'origin' instead
  • Clone (SVN): background clone fails with error
  • "Cannot find ... among log entries"
  • Startup: possible internal error when using --log parameter
  • Setup wizard: 1st option selected but disabled (e.g. with invalid license)

New in SmartGit 4.0.2a (Feb 14, 2013)

  • Fixed Bugs:
  • Index Editor: internal error when launching

New in SmartGit 4.0.2 (Feb 6, 2013)

  • New Features, Improvements:
  • Branches:
  • tooltip for annotated tags give information on the tag itself
  • Set Tracked Branch uses "git --set-upstream-to" for Git >= 1.8
  • GitHub: added system property "smartgit.github.url" to provide the
  • complete URL of a local GitHub server
  • Pull: added system properties "smartgit.pull.defaultToRebase" and
  • "smartgit.pull.defaultToRememberDefault" to have the Pull dialog default
  • to "Rebase" and "Remember for current branch"
  • Fixed Bugs:
  • Git:
  • Branches:
  • internal error when invoking purely branch-related operation
  • like Set Tracking) on a tag
  • missing context menu for "Other Refs"
  • Clone: possible internal error if Git reports progress > 100%
  • Push: tried to set up tracking if remote branch did not exist (e.g.
  • because it did not fit into fetch-refspec) resulting in strange error
  • http(s) authentication problems with username containing uppercase or
  • characters
  • Hg:
  • Log, Add Tag: was not enabled for public changesets
  • Windows: bundled Mercurial had web.cacerts set to wrong path
  • SVN:
  • Branches: allowed to delete special svn-attic and remote-tag refs
  • Fetch: all properties of an empty directory were lost when it became
  • non-empty
  • Git->SVN translation: file/directory obstruction if Git has special
  • gitignore record and some file
  • GUI:
  • Add Remote dialog: suggested user@server:port as name if these were part
  • of the URL
  • Changes: Next/Prev always moved focus to left editor
  • Compare editors: context menu might be empty
  • Compare: Next/Previous did not work if tool window had been maximized
  • Index Editor: toggling Ignore White Space for Line Comparison did not work
  • Notifications: possible internal error
  • Output: internal error having a child-node selected and Output is cleared
  • manually or implicitly when closing the project)
  • OS X: system shutdown caused SmartGit/Hg to hang preventing shutdown
  • Project Manager: current project is not preselected correctly if it had
  • a collapsed parent node
  • Select Directory: did not select reliable

New in SmartGit 4.0.1 (Jan 25, 2013)

  • New Features, Improvements:
  • Git:
  • Pull: added system property "smartgit.pull.defaultToFetchOnly" to have the Pull dialog default to just fetching
  • Pushable Commits: added system property
  • "smartgit.pushableCommits.preserveAuthorDate" to preserve author dates
  • ignore "mirror" remotes, so only-mirrored local commits will be shown
  • Fixed Bugs:
  • Git:
  • Push/Pull might not ask for new credentials for http(s) repositories possible internal error during authentication with http(s) repository
  • Add Submodule: internal error when trying to add http-submodule
  • Log:
  • file log: ref may become assigned to merge source instead of primary parent erroneously "default" coloring: alternative row coloring not displayed for the graph
  • Branch Delete: did not work on tags
  • SVN:
  • Clone (Windows): possible file-system related problems when cloning
  • SVN repositories
  • Refresh:
  • certain tasks may be cancelled when having multiple repositories in a
  • project possible internal error after executing a command Winodws: possible internal error
  • merge dialog: pressing Enter executes default button action two times
  • various commands: possible internal error if repository gets removed immediately before starting the command
  • text editors: pressing backspace at the beginning of a line might cause an internal error
  • tree control: internal error pressing Ctrl/Cmd+A if not all nodes were expanded

New in SmartGit 4.0 (Jan 23, 2013)

  • Fixed Bugs:
  • Git:
  • submodule changes prevented interactive rebase commands
  • SVN:
  • on every file rename an empty directory has been created in the repository
  • File Compare: selected text of changed blocks was painted in unchanged style when unfocused

New in SmartGit 4.0 RC 2 (Jan 23, 2013)

  • New Features, Improvements:
  • Hg:
  • Log:
  • added toolbar
  • show copy source
  • Text editors:
  • added Ctrl+Space word completion
  • ability to configure whether Home/End operate on line or document
  • Fixed Bugs:
  • Git:
  • Checkout/Merge: possible internal error for bare repositories
  • Log: possible performance problem for a lot of tags
  • Hg:
  • Log (file):
  • possible problem "Can't find file ..." for copied files
  • inefficiency related to tags
  • possible internal error
  • Customize Toolbar dialog: removing items did not add them to the available ones
  • Text editors:
  • options in the preferences did not work fully

New in SmartGit 4.0 RC 1 (Jan 23, 2013)

  • New Features, Improvements:
  • Git:
  • Log:
  • Details: "On Branches" should only display branches and only optionally include all refs (can be enabled in smartgit.properties)
  • denotes "grafted" commits (from shallow clones or initial SVN checkout)
  • Hg:
  • Log:
  • shows history of renamed/moved files
  • added SWT libraries to support Solaris
  • Fixed Bugs:
  • Git:
  • Choose-parent-commit-dialog (e.g. for Cherry-Picking a merge commit) could become too wide
  • Pull suggested to merge though rebase had been selected
  • File table: possible incorrect display of Relative Directory when selecting a different directory

New in SmartGit 3.0.11 (Nov 30, 2012)

  • Git:
  • Index Editor: strange error "Prefix string too short" for one-char-
  • filenames
  • Log:
  • possible internal error while or after closing the window
  • when invoked on submodule root, it always showed the log for the
  • submodule regardless of the repository choice
  • possible internal error reading stash ref log
  • Hg:
  • Log: internal error invoking Log on working directory which is located
  • on symlink
  • Refresh (Windows): possible internal error with repository on a
  • network share
  • Tag Browser: internal error when invoking on empty repository
  • Refresh: possible internal error related to file monitor
  • GUI:
  • internal error dragging one project to another window
  • notification popup: gray area remained after clicking a
  • notification link
  • table sorting arrow was inversed to other application
  • Windows 7:
  • different SmartGit versions showed up on same taskbar icon

New in SmartGit 3.0.10 (Sep 22, 2012)

  • Fixed Bugs:
  • Git:
  • gitconfig with UTF-8 BOM (EF BB BF) was not detected correctly
  • Branch Manager: rename was enabled for tags and remote branches
  • Log:
  • internal error when changing branch selection while manipulating
  • branches outside of SmartGit
  • hovering over the (...) tag/branch does not show a tooltip
  • SVN:
  • user could enter "git-svn-id:" signature in commit messages
  • possible re-occuring credential and fingerprint dialogs
  • GUI:
  • internal error when dragging item from Project Manager to directory tree

New in SmartGit 3.0.9 (Aug 9, 2012)

  • Fixed Bugs:
  • Git:
  • Push/Pull: might use the wrong remote (non-origin)
  • Remote operations on Windows: some environment configurations
  • HOME vs. HOMEDRIVE/HOMEPATH) caused hanging Git processes
  • SVN:
  • fixed problems with background clone
  • proxy settings from ~/.subversion/servers were not honoured
  • GUI: internal error in background task manager

New in SmartGit 3.0.8 (Jul 30, 2012)

  • Fixed Bugs:
  • File Compare/Conflict Solver: internal error when invoking Take Block too frequently
  • Git:
  • "Repository needs cleanup" popped up on every refresh
  • Windows: .gitconfig was not found if HOMEDRIVE/HOMEPATH did not match USERPROFILE
  • Hg: internal error when invoking on a repository which has no HEAD
  • Log:
  • internal error if repository was (temporarily) invalid
  • Windows: navigating to previous/next commits did not update the selection and focus correctly
  • Manage Remotes (Git): adding remotes to a SVN repository was possible
  • Open Repository (Hg): allowed to open sub-directory of a repository
  • Pull (Git): when invoked on project root for multiple repositories, "null" was shown instead of "origin" in the remote combobox
  • Push (Hg): bad dialog layout in case of multiple remotes
  • Refresh (Git): deleting a directory did refresh the directory tree, but not the file table

New in SmartGit 3.0.7 (Jun 27, 2012)

  • New and Improved Features:
  • GitHub integration: not only "my" repositories are listed, but also those where I'm working on
  • Bitbucket integration
  • Fixed Bugs:
  • GitHub integration did not work any more (GitHub deactivated the used API)
  • Log: possible internal error for commits without set author/committer
  • for small screen sizes the project window might have been smaller than the screen size (hint: remove unused buttons from the toolbar)
  • internal error trying to open the same project from two Welcome dialogs

New in SmartGit 3.0.6 (Jun 16, 2012)

  • New and Improved Features:
  • full-screen support for OS X 10.7
  • Push (Hg): option to push only current branch
  • Fixed Bugs:
  • Apply Stash: double clicking an entry did not invoke the default button's action
  • Branch Manager (Git): possible internal error when repository was removed while dialog was open
  • Clone (Windows): did not work if source or target directory was UNC-path
  • Clone (SVN): did not work when branches contained spaces in their name
  • Commit (Hg): might fail if commit message contained non-ASCII characters
  • Compare:
  • search and replace did not work correctly
  • internal error applying changes too quickly
  • Conflict Solver (Hg): internal error
  • Copy to Clipboard: internal error if too much text was selected
  • Log:internal error closing the window for certain layouts
  • internal error hovering the mouse over the graph
  • Log (Hg):
  • for a merge commit, file changes were displayed to the
  • wrong parent
  • tag-fetching of file logs blocked other operations
  • possible internal error
  • Log (Git):
  • fixed possible internal error when invoked from command line might remain empty (caused by stash containing an untracked node) stashes containing untracked nodes may not show up properly
  • Save As: showed two warning dialogs when selecting an existing file file log: commits for which only mode has been modified did not show up
  • Merge/Cherry-Pick (Git): system property:
  • "smartgit.submoduleUpdate.updateForAdvancedOperations" did not work
  • properly
  • Refresh (Hg, OS X): problems with non-ASCII characters in file names
  • Refresh (Git): possible hang if repository contains large files
  • Various commands (Hg): did not work any more after closing and reopening another project in the same window

New in SmartGit 3.0.5 (May 28, 2012)

  • New and Improved Features:
  • Branch Manager: the hiding of seperate entries for tracked remote branches can be disabled by setting smartgit.git.hideTrackedRemoteBranches=false (in smartgit.properties)
  • Log: closing the Commits tool window is not prevented
  • Submodule handling: system property "smartgit.submoduleUpdate.useGit" introduced which will invoke "git submodule update" as part of SmartGit's submodule-updating-procedure; invoking this command is e.g. necessary to honor "submodule.$name.update" in .git/config
  • various commands: in case of failure, the error dialog is shown immediately and the refresh triggered at the same time
  • Fixed Bugs:
  • Branch Manager (SVN): certain remote branches were not displayed
  • Compare: internal error quickly performing take-block actions
  • Commit:
  • could not commit files with leading minus in name, e.g. "- foo.txt"
  • SVN: when committing from cherry-picking state, untracked files were shown as being included into the commit
  • Conflict Solver: internal error deleting lines
  • Edit Last Commit Message (SVN): cleared the cherry-pick meta information
  • few GUI-related internal errors, e.g. when closing a window while commands were still running
  • http-protocol: in case of authentication failure, password was not invalidated
  • Log, Cherry-Pick (SVN): irritating dialogs when cherry-picking unpushed commits
  • Log, Details tool window: scrolling by clicking the up/down arrows on the scrollbar was very slow
  • Log in dialogs, e.g. Merge: internal error invoking Copy if multiple lines were selected
  • Pushable Commits: were not updated correctly after having pushed outside SmartGit
  • Refresh:
  • possible internal error for bad encodings in file names in .git/index
  • repositories with missing core.repositoryformatversion could not be scanned
  • Windows: .gitignore and .gitattributes were not read with UTF-8 for msysgit >=1.7.10
  • Windows: files were displayed as modified if core.filemode=true
  • SVN: problems with tags or branches ending with a period
  • tables: toggling checkbox columns using space bar did not inform listener

New in SmartGit 3.0.4 (Apr 24, 2012)

  • New and Improved Features:
  • Log, Details: shows author's email address now as tool tip
  • Pushable commits: when quitting/exiting don't warn for commits in
  • non-tracking branches
  • Switch (Git): performance improvement for remote repositories with many
  • refs
  • Fixed Bugs:
  • Branch Manager: internal error when closed too quickly
  • Changes tool window:
  • jumped back to first change when window was resized
  • if located inside a tab, content was not updated when selecting the
  • Changes tool window tab
  • Clone (SVN): possible error of "git repack"
  • Discard (Hg): did not work on modified files for merge commits
  • GUI (OS X): maximizing a window did not remember the correct size
  • Log: did not stop loading content of previously selected files if no
  • commit was selected any more
  • Log (Git): possible internal error for commits with huge commit message
  • Log (Hg):
  • endless loading-loop once initial commit had been reached
  • for merge commits, the Changes view might compare against the wrong
  • parent revision
  • Pull (SVN): possible internal error
  • Push (SVN): "directory already exists" error when pushing directory
  • creation in an empty directory
  • Refresh (Git): after fast-forward merging, a changed submodule was not
  • reported as modified
  • Refresh (Hg): backslash in .gitignore was incorrectly interpreted
  • Submodule Init/Register: problems with 'user@host:/path'-URLs
  • Submodule Reset: possible internal error
  • Switch (Git): hangs for https repositories with (msys)Git 1.7.9.2 or
  • newer
  • Warning dialogs: possible internal error

New in SmartGit 3.0.3 (Mar 31, 2012)

  • New and Improved Features:
  • Log: tracked/tracking branches use puzzle-tile look, not only when
  • similar named
  • Fixed Bugs:
  • Changes tool window:
  • showed wrong file length/SHA for "too large" files
  • internal error for large files pressing Refresh
  • Clone:
  • internal error modifying the URL so a double slash occurred
  • internal error trying to clone a local Hg repository
  • docking: internal error switching to a tool window while another one
  • was maximized
  • Log:
  • did not continue to load when filtering
  • Push: internal error pushing to SVN
  • Refresh:
  • Hg: internal error related to non-ASCII file names
  • Hg: .hgignore problems
  • huge files showed up as modified
  • internal error if repository contained invalid file names, e.g.
  • "foo::bar"
  • Windows: upper-case submodules were not refreshed correctly
  • SSH: password for password authentication was not remembered when
  • master password was used
  • Stage: did not work for symlinks pointing to submodules
  • Submodules with .git file with relative path (e.g. ../../foo) were not
  • recognized
  • miscellaneous:
  • internal error accessing disposed control
  • internal error opening Switch dialog (caused by duplicate column
  • information)
  • thread leak while scrolling file table using cursor keys

New in SmartGit 3.0.2 (Mar 31, 2012)

  • Fixed Bugs:
  • Changes tool window: "Previous Change" did not work for added block at the end of a file when the focus was at the other side
  • Clone (SVN): needs-to-join-notification after cloning all except the latest commit was closable internal error while exiting from the system tray and a welcome dialog was shown
  • Log (Git): Save As was not enabled for files on initial commit several internal errors
  • View|Table Columns: internal error while drag and drop when registering the license file in first setup wizard run, SmartGit was asking for the license on each restart

New in SmartGit 3.0.1 (Mar 31, 2012)

  • New and Improved Features:
  • Branch Manager, Tags:
  • renamed column "Tag ID" to "Tag Message"
  • show the ID behind the tag message
  • Notifications: when moving the mouse over an auto-hiding notification
  • popup, the full popup will be shown
  • Windows 2000: gdiplus.dll was required (launching with Java 1.6)

New in SmartGit 3.0.0 (Mar 31, 2012)

  • Fixed Bugs
  • Refresh (Hg):
  • symlinks were always reported as modified
  • possible internal error
  • Push (Hg): displays error if no commits were pushed (Mercurial 2.1)
  • Built-In SSH-Client: internal error
  • internal error related to drag-dropping tool windows to certain locations
  • File monitor: possible internal error on Windows
  • Directories tree: while loading (or sometimes after executing a command) the root node looked truncated on Windows 7
  • tables:
  • did not preserve selected object when changing sorting
  • speed search did not scroll found rows into view (regression)

New in SmartGit 2.1.7 (Jan 28, 2012)

  • Fixed Bugs
  • Add Submodule: should invoke "submodule add" instead of "clone" to have 1.7.7 submodules in proper format
  • Clone (SVN):
  • always fails if non-trunk branch to checkout is specified
  • "cannot resolve reference" while checking for large .gitattributes
  • problem when trying to clone from SVN 1.7 servers
  • possible internal error in "joining" phase
  • Log: "Files" display may hang due to very expensive rename-detection
  • Pushable Commits:
  • all commits with the same timestamp as the selected commit were pushed
  • didn't show commits of local branch any more
  • should honor tracking branch configuration
  • Refresh: possible internal errors
  • Status Bar: "Cloning" tooltip did not display

New in SmartGit 2.1.6 (Jan 28, 2012)

  • Fixed Bugs:
  • Clone: problems when cloning GitHub repository (Git protocol should be preferred over SVN protocol)
  • Submodules: compatibility issue with Git 1.7.7 submodules

New in SmartGit 2.1.5 (Jan 28, 2012)

  • New and Improved Features
  • Open Working Tree: when user selects an SVN repository, explain how to use SmartGit's SVN support instead of suggesting to initialize Git working tree
  • Push (SVN): show more details on lossy merge
  • Fixed Bugs
  • Built-in SSH client: if neither password nor public-key authentication is supported, the authentication dialog still occurs
  • Changes view: more reasonable error message in case of large files
  • Check for New Version: possible internal error when using proxy which requires password authentication
  • Cherry Pick (SVN): parent commit should not be selectable (it will always be the first parent which is merged)
  • Clone:
  • for Beanstalk, possible bad composition of URL
  • possible internal error when using API token instead of password
  • SVN: if .gitattributes support is turned off, core.autocrlf is not properly re-configured, possibly resulting in CRLF files stored in the SVN repository
  • SVN (Mac): possible internal error when cloning repositories containing files with certain special characters
  • Log
  • Cherry-pick (SVN) should warn in case of lossy merges
  • possible internal error on Refresh
  • Save As: wrong directory preselected in file chooser
  • Merge:
  • Cherry-pick (SVN) might report false-positive lossy merges (caused by parent commits of the cherry-picked revisions)
  • graph is not refreshed after having entered/discarded "Merging" state
  • Push (SVN): "checksum mismatch" when pushing changes to a file with svn:eol-style set to "CRLF"
  • Rebase:
  • possible internal error
  • Refresh:
  • EOL-only modifications are not displayed in certain situations
  • files with CRLF in repository may be reported as modified when using autocrlf=true
  • Mac OS: .gitignore/.gitattributes should be read with UTF-8 encoding possible internal error for invalid HEAD
  • Submodule status (SVN): sometimes "URL mismatch" is shown instead of valid state

New in SmartGit 2.1.4 (Jan 28, 2012)

  • Fixed Bugs
  • Clone: internal error when entering URLs with certain syntax for "Repository URL" (regression)
  • Refresh: internal error when working copy is located at drive root

New in SmartGit 2.1.3 (Jan 28, 2012)

  • Fixed Bugs
  • Cherry Pick: system property "smartgit.cherry-pick.sha-prefix" to enable and specify prefix for appending of SHA to cherry-picked commit message
  • Clone (SVN):
  • file://-protocol should not be supported
  • branches/branchname should be mapped to ref/remotes/svn/branches/branchname instead of just refs/remotes/svn/branchname to avoid problems if a branch 'trunk' exists.
  • Various commands (Windows): git output parsing should assume UTF-8

New in SmartGit 2.1.2 (Jan 28, 2012)

  • Fixed Bugs
  • Clone: cloning Git repository using file:// protocol did not work
  • Compare:
  • internal error when invoking Replace
  • backward searching: at beginning of document the user was asked whether to start from beginning
  • Internal errors might not be reported anymore for Java 7
  • Push Advanced: configuring tracking for selected branch(es) did not work
  • Refresh (on frame activation): should not refresh when switching between
  • SmartGit windows
  • Setup:
  • new evaluation is not possible, if older version had been evaluated earlier
  • possible internal error when configuring Git executable
  • Tag Browser: possible internal error

New in SmartGit 2.1.1 (Jan 28, 2012)

  • New and Improved Features
  • Push Advanced: remembers non-default remote branch
  • Refresh (Linux): refreshs onn frame activation
  • Fixed Bugs
  • Refresh:
  • internal error in combination with submodules
  • internal error if working tree was located at drive root
  • Clone (SVN): internal error
  • Push Advanced: asked for tracking configuration when pushing to non-default remote branch
  • OS X: clicking "Purchase Update" buttons did nothing

New in SmartGit 2.1 final (Jan 28, 2012)

  • New and Improved Features
  • Pull/Initialize: should perform submodule initialization recursively
  • (except when initializing just a single submodule)
  • Fixed Bugs
  • Bugreport window: email button was not shown on Linux
  • Clone (SVN):
  • background clone was not resumed on restart if credentials are required and master password is used
  • Clone/Fetch (SVN):
  • internal error if tags/branches were copied as a whole directory
  • spaces and '#' in svn:eol-style and svn:mime-type could result in unparsable .gitattributes lines
  • svn:ignore containing '\r' was not properly processed
  • Refresh: "text=auto" in .gitattributes was not handled properly

New in SmartGit 2.0.6 (Jul 27, 2011)

  • Pull (submodules): internal error if submodule is set to ref which should be
  • forwarded to updated remote ref
  • fixed handling of line separators (in order of precedence):
  • use line endings of the file as present on disk
  • if file has no line endings, or mixed line endings, determine "eol" attribute for gitattributes
  • if not found, use value specified by core.eol
  • if not found, use system line separator
  • This holds true for all editors except of the built-in basic editor which
  • is invoked on Open. This one will use line endings as on disk, or system
  • line endings otherwise.

New in SmartGit 2.0.5 (Jul 7, 2011)

  • Improvements:
  • documentation: added section about directory and file states
  • built-in SSH client: improved support for personal firewalls
  • Fixed Bugs:
  • Pushable Commits: push did use force option and hence might have overwritten remote changes
  • Log:
  • performance bottleneck for many stashes
  • internal error when parsing malformed author-information
  • merge commits might have not been displayed for subdirectory logs
  • Refresh:
  • failed in case of conflicts in .gitmodules
  • internal error related to submodules
  • internal error when directory was replaced by symlink
  • various commands: internal error when working tree was located at file
  • system root
  • Pull/others: submodules were not properly updated
  • Push: warning about missing "origin" even if there is just one remote
  • Push Advanced:
  • internal error when entering ':' as port of non-default remote branch
  • "Current branch was selectable even if there was no current branch
  • Show Changes: error for added files which are modified in the working
  • tree
  • built-in SSH client:
  • constantly recurring finger print dialog for upper-case host names
  • internal error in case of invalid "host key algorithm" wish list
  • Clone:
  • internal error when invoking "Select from "
  • internal error when trying to clone webdav-repository
  • Clone/Add Submodule: internal error if URL contained duplicate

New in SmartGit 2.0.4 (Apr 6, 2011)

  • Improvements:
  • Branch Manager: show tag-ID and message (only for annotated tags)
  • Linux: use xdg-open to open URLs in the default browser
  • Setup: git-executable from default settings should be honored
  • Sync: show warning, if merge/rebase had not been performed because it's switched off
  • Fixed Bugs:
  • Branch Manager:
  • possible internal error when trying to delete a remote branch
  • scroll position was reset on every asynchronous update
  • Clone: possible internal error when trying to clone SVN repository via svn+ssh://
  • Commit: "~" in "commit.template" path not properly processed
  • Index Editor: saved file with default line separators instead of original separators
  • Log:
  • Next/Previous Change did not work if two commits have been selected if frame is open and minimized, it was not maximized on next Log invocation
  • possible internal error related to rename-detection
  • Preferences, Conflict Solver: after showing an error, the input field was hidden
  • Project: possible internal error when closing project window
  • Pull: did not work on multiple repositories
  • Refresh:
  • possible internal error related to file monitor
  • symlinks did not show up as modified

New in SmartGit 2.0.3 (Feb 9, 2011)

  • Fixed Bugs:
  • SSH connection logs may pile up in temp directory
  • Refresh:
  • internal error if file/directory gots obstructured
  • .git/info/excludes was not honored if core.excludesfile exist
  • Windows: possible internal error when using Cygwin Git
  • credential dialogs:
  • if the user enters private key file name, the error message hid the information about the SSH server
  • if no private key file was known, the passphrase input field was prefocused though the one for the private key file should be
  • various submodule-related problems
  • Ignore dialog: internal error when typing invalid regular expression patterns
  • Log:
  • internal error clicking on the first commit node
  • Delete Tag/Branch dialog: internal error clicking Delete without selection
  • renames were not followed under certain conditions
  • internal error trying to open a working tree in the root of a drive (e.g. network share) on Windows
  • Clone (GitHub):
  • UI asked for API token where password should be provided causing internal error when listing repositories
  • Commit: when Push option is selected, not the submodule's repository was pushed, but the parent one
  • Pull: optional initialization of submodules did not work

New in SmartGit 1.5.7 (Nov 2, 2010)

  • Improved:
  • Startup: when passing not yet known working tree path as argument, a new
  • project is silently created
  • Refresh: severe problems are now reported using a dialog instead of using
  • the "present but defect" state
  • Project window:
  • Added menu item to reset layout
  • To not expand the working tree roots automatically, set the VM property smartgit.workingTree.expandFirstLevel to false
  • Branch chooser: to disable possible expensive evaluation of diverged
  • commits, set the VM option smartgit.branch.evaluate-diverged-commits
  • to false
  • Fixed Bugs:
  • Conflict Solver: when scrolling horizontally after having scrolled vertically, it scrolled back to the vertical position of the caret
  • Refresh: fixed possible internal error
  • Push: tracking branch name different from local branch name has not been honoured
  • OS X: updated Quaqua to version 7.1.1 to solve a crash in the file chooser

New in SmartGit 1.5.6 (Sep 3, 2010)

  • Cherry-pick: even if failed with conflict, the output node is shown green
  • Log:
  • after opening the "Changes" view and file table showed details from wrong commit
  • internal error if branch name does not match the exact-case of the file name
  • Refresh (Windows): performance improvement
  • Refresh: internal error after having added a submodule outside of SmartGit
  • Branch Manager: was available for non-local branches, too
  • Delete tag/branch: error "dst refspec ... matches more than one"
  • Stage: did not work for ignored files

New in SmartGit 1.5.5 (Aug 10, 2010)

  • Internal error, because main frame is locked two times without unlocking
  • Ignores: relative path for core.excludesfile in user's .gitconfig was not used relative to the repository root
  • Sync: failed with "Could not resolve commit 'refs/remotes/origin/master'
  • if remote repository was empty
  • Commit: in case of merged submodule, no repository selection dialog was
  • shown
  • Compare components: after a very expensive file compare, subsequent
  • compares did not work any more
  • Refresh: 'git update-index --really-refresh' caused files set with
  • assume-unchanged to be reset; replaced with 'git update-index --refresh'
  • Log: "All Branches" option was available for files and subdirectories
  • OS X: VM crash when selecting something in the File chooser and an accessibility tool, e.g. Voice Over, is active
  • OS X: removed work-around for Apple Java bug 8102825, because too much
  • side-effects
  • OS X: unselected radio buttons were focusable
  • OS X: Work-around for critical Java Virtual Machine bug 6875866, affecting Intel Nehalem CPUs, e.g. Core i7, and possibly resulting in various strange internal errors

New in SmartGit 1.5.2 (May 22, 2010)

  • Improved:
  • Log: straighter layout of branch starts
  • Fixed Bugs:
  • Conflict Solver: temp files were tried to create with colons in the name
  • directory tree popup menu did not match the selected directory when right-clicking a previously unselected directory
  • Refresh:
  • internal error when having different file name case in index and working tree
  • certain modifications were not detected if timestamps were near the index' timestamp ("racily clean" files were not detected)
  • internal error related to project state calculation
  • Edit|Customize: did not apply changes immediately after clicking OK
  • Submodules: empty submodules (initialized, but not yet pulled) were not displayed
  • SmartGit-SSH: fails (at least on Windows) if the temp directory path contains spaces; an according warning message is now shown with the msysgit bug causing this problem
  • Remove: if invoked on a directory and nothing was found, no information dialog was shown
  • Relative Directory table column: incorrect working tree was displayed for files in a multi-working-tree project if the (project) root node had been selected
  • generic bundle: contained .png files with incorrect name

New in SmartGit 1.5.1 (Apr 22, 2010)

  • Clone: a not-yet-existing target directory will be tried to create automatically
  • Checkout command (and others): output progress is shown in progress bar
  • Log, Branch Chooser dialog:
  • is now sorted by type
  • added speed-search (search as you type)

New in SmartGit 1.5 (Apr 8, 2010)

  • Fixed Bugs:
  • internal error setting the working tree text file encoding to system encoding

New in SmartGit 1.5 RC 3 (Apr 2, 2010)

  • Improved:
  • Rebase: added third wizard page to configure further rebase options, e.g. how branches should be handled (moved or kept)
  • Fixed Bugs:
  • Log:
  • containing branches on the Details tab were not displayed when log is extended
  • no File has been shown if only files in the root directory had been changed by the selected commit
  • Refresh: when resuming after a command invocation, phantom changes were reported
  • Cherry Pick dialog:
  • multi-threading related internal error
  • sometimes all revisions were marked as available
  • Rebase:
  • showed warning about losing commits even when they actually would not be lost under certain conditions on Source page the Branch option could not be selected

New in SmartGit 1.5 RC (Mar 27, 2010)

  • Improved:
  • Log: SVN revision columns is now only present for git-svn repositories
  • Fixed Bugs:
  • Switch, Push dialog: active branch was not shown any more
  • Push dialog: internal error after showing warning
  • Refresh: internal error for a file with name '\'
  • Commit/Stage: did not work for broken symlinks
  • Delete: empty error message when trying to delete locked file
  • Output: execution of commands is reported as error, although there have been just warnings

New in SmartGit 1.5 Beta 4 (Mar 24, 2010)

  • Fixed Bugs:
  • Commit dialog, Select from Log: always added trailing line separator
  • Log (and others): internal error for invalid author/committer information
  • Log: internal error in case of corrupt commits
  • Check Out: internal error when invoking the branch selector on a repository which is not at a branch
  • Check Out (and others): internal error when invoking on a merging repository
  • Check Out (and others): internal error when pressing OK button without having a (valid) commit selected
  • Add Submodule: internal error when trying to add submodule to repository which itself has no origin
  • Switch dialog: OK button was enabled even during initial loading

New in SmartGit 1.5 Beta 3 (Mar 18, 2010)

  • New Features:
  • project with multiple working trees: ability to arrange the working trees with drag and drop
  • Improved:
  • Log (and dialogs showing the commit history): reworked the branch selector
  • Log: reduced UI noise after opening a graph showing all branches
  • improved dialog texts, incoming and outgoing changes arrows
  • Push: allows to push tags
  • project file list: display different conflict types
  • project directory structure, working tree roots:
  • while rebasing show a blue exclamation mark
  • don't show full paths any more, but only short ones (the full path is displayed in the tooltip)
  • tray icon popup: now uses a better font
  • Fixed Bugs:
  • Log: certain dialogs were displayed on project window (instead of the Log window)
  • Windows: the binary quick compare before opening a compare tool did not detect files differing only in line separators
  • Log, Compare with Working Tree: save did not trigger refresh in project window
  • Rebase: asked for branch selection on target page although irrelevant
  • Refresh:
  • fixed possible dead-lock
  • certain kinds of staged files were not detected
  • Add Submodule: did not trigger refresh of added submodule
  • Push: fixed possible internal error
  • Undo Commit: if invoked for the first commit in the repository, the error message was misleading
  • certain commands must not be available on nested modules
  • Compare Preview: did not refresh if the file was modified

New in SmartGit 1.5 Beta 2 (Mar 12, 2010)

  • New Features:
  • Branch Manager: configure and reset tracking
  • status bar: the selected file or directory count is shown
  • Improved:
  • improved refresh performance (e.g. refresh after saving in built-in File Compare)
  • git-svn integration: now also remembers path for SVN client certificates
  • directory structure: the working tree root now shows the name or relative path to a common root (in case of multiple working trees) to make the current branch better visible
  • Log: moved root (branch) combobox to graph header to save screen space
  • Log: indicate HEAD
  • Log: optional table column showing the SVN revision (git-svn)
  • Revert on a modified submodule: optionally resets to registered commit
  • Pull: option to initialize submodules
  • Conflict Solver: shows file name in title
  • Fixed Bugs:
  • when cloning and a new project window opens, the progress was shown in the wrong window
  • Conflict Solver: now prevents to be opened on binary files
  • different commands: internal error if invoked for an empty repository
  • Revert to Head on ignored files resulted in staged changes
  • Refresh: internal errors, e.g. for invalid submodule
  • Push: now also allows to push, if "behind" tracking branch (using force)
  • Pull/Sync: submodule update did not consider SSH settings
  • Log: incorrect commits were displayed if invoked on a file during a merge
  • Compare preview: was not correctly refreshed after having changed the font size

New in SmartGit 1.0.4 (Mar 12, 2010)

  • Fixed Bugs:
  • Save Stash: did not work if a minus was used as stash message (Git tried to interpret it as command line option)
  • built-in File Compare, Conflict Solver or Editor: changing the same line after a save which was changed immediately before the save did not mark the document as changed
  • Ignore: internal error when using / or ! within the pattern

New in SmartGit 1.5 Beta 1 (Mar 5, 2010)

  • New Features:
  • Remote|Sync: to perform a push and pull basic git-svn integration
  • Local|Stage Lines: opens a 3-pane-compare (Head, Index, Working tree) to individually modify them
  • quick stash using the popup menu in the tray
  • Commit and Revert dialog: double click to open a file compare
  • Local|Reset: to reset to an earlier commit and then be able to squash-merge intermediate commits
  • Project|Edit Working Tree:
  • ability to change the working tree path
  • configure text file encoding used for built-in file compare, conflict solver, editor
  • ability to define default sync and pull operations (rebase vs. merge)
  • Log: refresh
  • Improved:
  • submodule support (Remote|Submodule)
  • built-in File Compare, Conflict Solver, Editor: ability to use non-fixed fonts allowing far-east characters to be displayed correctly
  • Pull: option to use Rebase (Project|Edit Working Tree)
  • Pull (Fetch): a warning is shown if no merging is possible because of no tracking branch
  • Switch, create local branch: option to configure tracking
  • Pull and Switch dialog: information about number of commits ahead or behind tracking branch is shown
  • Rebase: option to rebase onto tracking branch
  • Clone: remembers last cloned URL
  • Rebase: warning is shown to prevent loosing commits accidently
  • Local|Save Stash: new option to add untracked files
  • detection of bare repositories
  • Log: refresh
  • Log: remembers whether all branches were shown
  • Log: when in merging state for a file, show virtual merge sources branch
  • option to prevent tray icon
  • option to always open project in current or new window
  • for files, file size and last modified time are displayed

New in SmartGit 1.0.3 (Feb 6, 2010)

  • Fixed bugs:
  • Refresh/Log: internal error in case of missing objects in .git/objects database
  • Commit: if a file is marked for removal, but locally existing (untracked), commit re-added it

New in SmartGit 1.0.2 (Jan 9, 2010)

  • Stage: was not available on certain conflict states
  • Refresh and other commands: internal error for incomplete [remote-] entries in .git/config
  • Refresh: internal error when switching back to SmartGit window
  • Log: fixed an internal error
  • Conflict Solver: not all toolbar buttons had a describing text

New in SmartGit 1 Milestone 6 Build 3 (Nov 9, 2009)

  • Search-Replace dialog: internal error when pressing Replace without having entered something