GitExtensions v3.4 Release Notes

Release Date: 2020-06-05 // almost 4 years ago
  • Downloads

    πŸš€ Another massive release. Thank you to everyone who helped to shape this release.
    🍱 Massive shoutouts and kudos to @NikolayXHD for making Git Extensions go dark πŸŽ‰, and special big props to @gerhardol, @mstv and @pmiossec for all your hard work and commitment.

    The changelog...

    • [#8182] Make scripts execution safer
    • πŸ‘» [#8178] AppVeyor Exception at init
    • πŸ— [#8177] Prevent NRE when getting AppVeyor build duration
    • [#8175] FileStatusList context menu order
    • πŸš€ [#8164] Link to read-the-docs for release version
    • [#8163] Shell extension icons
    • [#8155] Fix up splitter positions
    • πŸ”€ [#8152] Improve display of merged branches
    • [#8144] Fix up restoring the selection of revisions on reload
    • [#8140] Add 'Reset another branch to here' feature
    • [#8138] Hide extra separator in context menu for folder item
    • [#8137] Fix FormCommit context menu issues
    • [#8133] fix: New remotes not saved, if exceed limit
    • ⚑️ [#8123] Fix 8122 Update Atlassian.SDK package to latest version
    • πŸ‘» [#8122] Jira Commit Hint throws exception for some Jira issues
    • [#8118] Fix up user scripts without icon
    • [#8114] Limit number of diff revisions
    • [#8093] Add information icon to checkboxes in Settings window
    • [#8089] [NBug] Could not load file or assembly 'RestSharp, Version=106.1.0...
    • πŸ— [#8068] Portable build doesn't contain PluginManager
    • [#8059] Correct filemode for source files
    • [#8058] Ignore inaccessible file in GetSelectedBranchFast
    • [#8056] Select multiple revisions using Left Panel
    • [#8051] git-diff override diff.mnemonicprefix=true
    • [#8050] Unneeded rev-list for submodule status
    • ⚑️ [#8043] Ignore GitHub API rate limit induced errors when search for app updates
    • πŸ”€ [#8042] Fix 3954 quotes in merge commit message
    • βͺ [#8041] Restore broken AutoCRLF tests
    • 🏁 [#8040] Ignore Microsoft.WindowsAPICodePack.Shell.ShellException
    • 🌐 [#8034] Cleanup git status before calling TranslationApp
    • [#8031] Fix compatibility with WSL (\wsl$) network resource
    • ⚑️ [#8020] Update artificial commit diff
    • [#8016] Prevent an ArgumentOutOfRangeException
    • [#8012] RevDiff, Commit: Delete untracked directories
    • [#8008] Fix #7937 Reflog form : index was out of range.
    • [#7999] Fix up double plural in ResourceManager.Strings
    • [#7993] Fix up show all branches / tags in history
    • [#7986] fix: Error while executing user script from RevisionGrid
    • [#7984] Deleted files presented as Unkown
    • [#7981] Redesign script config
    • ⚑️ [#7976] GitStatusMonitor: Avoid background updates if GUI is not visible
    • [#7974] Centralise removal of invalid repositories
    • [#7972] Unify the use of "Git Extensions"
    • [#7970] Revision Links: Detect GH issues like ".../i1111"
    • [#7968] Fix branch rendering
    • πŸ‘» [#7962] Avoid invalid path exception on invalidated Module.WorkingDir
    • [#7961] Align context menu order for FileStatusList
    • [#7959] Fix rename file icon size
    • [#7958] [NBug] The path has an invalid format.
    • πŸ— [#7955] Fix error during Publish build.
    • πŸ”€ [#7951] Merge combined conflict set to IsConflict
    • [#7950] Uplift script handling
    • [#7948] fix: Locate diff tools in C:\Program Files\ folder
    • [#7942] LeftPanel: Fix size of the GitHub remote icon
    • 🏁 [#7941] Windows TaskBar JumpList was not initiated
    • [#7938] formstash improvements
    • [#7932] Fix/7931
    • πŸ— [#7929] Break the build if there are any errors in publish tasks
    • [#7928] Improve blame gutter display
    • 🚚 [#7927] Move settings page titles from designer files
    • [#7926] Use ViewChangesAsync consistently for changes
    • [#7924] Align recent branch names
    • [#7923] RevDiff: Show common/unique files for BASE->selected(B)
    • ⚑️ [#7922] FileStatus icon: submodule before status updated
    • [#7921] Fix 3 not reproduced exceptions
    • [#7919] Settings: Color title label missing
    • [#7918] [NBug] Attempted to perform an unauthorized operation.
    • [#7917] Settings > Appearance > Colors has no title
    • [#7916] Prepopulate branch name in FormCreateBranch
    • πŸ“œ [#7915] Ignore Git error messages in parsing
    • [#7914] Separate staged status from GetDiff
    • [#7913] git-status: use config to set ignoreSubmodules
    • [#7912] RevDiff: follow selection only in first list group
    • πŸ›  [#7908] Bugfix/i7898 nre no parent
    • [#7904] Add root description to Git node in settings tree view
    • [#7903] Make DropDownWidth in BranchSelector adjust to longest item
    • [#7900] Simulate continuous scroll to display revision diff
    • [#7899] RevDiff: Show common files for BASE->A
    • 🚚 [#7895] Remove Gerrit plugin
    • [#7893] Share common GitUI.Strings.Error
    • [#7891] FormCommit: F3 to diff large files
    • [#7888] Add hotkey for switching between artificial commits
    • [#7886] Bring into view already selected branch on ROT click
    • πŸ’» [#7884] UX: Swap OK and Cancel button Recent Repo Settings UI
    • [#7883] Add setting to show branch name in recent repos drop down
    • ⚑️ [#7881] BitBucket plugin update of RestSharp
    • [#7878] Centralise reference version management
    • ⚑️ [#7877] fix: Translation update issues
    • [#7876] More complete CanBeGitURL
    • ⚑️ [#7875] Tab "Diff" is not updated at changes for artificial commits
    • 🌐 [#7872] Fixup translation (last master merge)
    • [#7869] submodules IsDirty item status
    • [#7868] Display text if an image cannot be displayed
    • [#7853] Handle gracefully a NRE on body message
    • πŸ”Œ [#7850] Fix slow plugins loading
    • πŸ”Œ [#7842] Plugins are extremely slow to load
    • [#7832] Files starting with space incorrectly handled
    • [#7831] Show new files as file, not diff
    • [#7824] revdiff: Show new file in worktree as file, not diff
    • πŸ”’ [#7820] Surround access to plugin collection with a lock()
    • [#7800] Stash: Form fail to load
    • [#7798] RevisionDiff: Try retain the file selection when switching commits
    • [#7797] Convert theme file to css palette
    • πŸ”€ [#7781] Support merge.guitool
    • [#7779] SidePanel Submodules: Status for top module
    • [#7775] Fix incomplete reset in ReferenceRepository
    • [#7770] Adapt submodule button to context
    • βœ… [#7753] Avoid deleting test directories while operations may be in progress
    • [#7752] Avoid a 200ms delay when RunBackgroundAsync is cancelled
    • ⚑️ [#7750] Avoid attempting to update non-existent UI
    • [#7739] FormCommit: Unaccessible COMMITMESSAGE
    • [#7732] AzureDevOps CI: Fix and improvements
    • [#7720] improve file status list presentation
    • πŸ”¨ [#7719] Refactor: Compare with ObjectId rather than Guid
    • ⚑️ [#7715] removed TopMost attribute from the FormUpdates dialog
    • [#7714] GE should not crash when no email applications are available and user…
    • [#7711] gitex.cmd: handle quotes in commands
    • [#7694] Delete multiple files at a same time with popup menu
    • [#7690] FileViewer: Do not access the file system for git blobs
    • [#7687] RevisionGrid: Directory Diff HotKey
    • βœ… [#7686] Do not deregister from Application.ThreadException between tests
    • [#7685] Make folder removal safer
    • [#7678] Add pwsh as a choice of shell in Console tab
    • πŸ›  [#7677] bugfix: ignore specific ActiveDocument exception
    • 0️⃣ [#7667] ObjectId ShortString: set default to 8 chars
    • [#7666] Add A/B to RevisionDiff revision descriptions #7626
    • πŸ”€ [#7657] Keep Syntax Highlight Rules Synced With Resources
    • πŸ”€ [#7655] merge conflict: Do not require .cmd or .path
    • [#7651] ls-tree: Use -- to escape files starting with "-"
    • βœ… [#7647] Improve [Form]CommitInfoTests
    • [#7641] NRE when GitHub token is invalid
    • [#7633] Check if path is valid before Path.Combine
    • πŸ›  [#7624] FileViewer context menu fixes
    • [#7619] Improve closing of FormCommit
    • [#7615] Convert and quote file names for BatchUnstageFiles
    • [#7612] Improve speed of directory change in console tab
    • πŸ’… [#7603] Merge branch dialog: Make form border style fixed and align checkboxes
    • πŸ›  [#7597] Improve restoring of the commit dialog geometry (Fixes #7588)
    • ⚑️ [#7596] Disable maximising/minimising of update form
    • [#7591] Improve determination of the GitExt directory (fix of issue #7587)
    • [#7585] Make message textbox bounds clear
    • [#7584] Prevent NRE in designers that use EditNetSpell
    • [#7567] Add feature to open repo in a new window
    • [#7562] Color scheme followup #2
    • [#7561] RevisionDiff: Show BASE diff
    • [#7560] RevisionDiff: Limit parents
    • πŸ“œ [#7559] Gerrit: fix server version parsing
    • [#7558] RevisionDiff: No reset to CombinedDiff
    • πŸ”€ [#7551] Remove obsolete 2-way merge tool names
    • πŸ”€ [#7548] kdiff3: Incorrect merge cmd
    • [#7547] gitex: If no argument start browse in current workdir
    • [#7540] Color scheme followup
    • [#7516] Open repo directly on confirmation of folder dialog
    • [#7515] Reduce clipping in FormSettings
    • [#7496] Filter staged files
    • πŸ’» [#7490] OpenRemoteUrlInBrowser: Issue (#7439)
    • [#7489] Install with AppGet (https://appget.net/)
    • πŸ— [#7485] BuildServerIntegration: Fix freeze due to polling interval adjustment
    • [#7482] ResetCurrentBranch: Correct tab order
    • [#7477] Azure devops ci: reduce calls to api when revision grid is refreshed
    • ⚠ [#7457] Add warning header
    • πŸ— [#7452] BuildServerIntegration: Adjust polling interval for running builds
    • 🚚 [#7445] Remove background thread from RevisionDataGridView
    • ⚑️ [#7413] NullReferenceException during update check
    • [#7406] Add view blame in GitHub
    • [#7334] Add icon to all MessageBox that don't have one
    • [#7329] Improve revisiongrid tooltips
    • [#7213] Dark theme
    • πŸ”¨ [#7044] Add and refactor diffmerge tools