Releases: Uncommon/Xit
Releases · Uncommon/Xit
1.0b17
New & changed
- Sort options for file lists.
- Renamed files are now listed as such, instead of delete and add.
- History list indicates signed commits with a ✸ (security seal) icon. Signatures are not currently verified; the icon just indicates the presence of a signature.
- Sidebar icons differentiate between lightweight tags, annotated tags, and signed tags (again, not verified).
- Annotated tags have an info popover showing the creator, date, and message.
- Commit message trailers are also shown in the header area.
- The Clone panel can now authenticate for private repositories.
- Hidden/shown history columns are remembered.
- Larger default window size.
- Hardened runtime enabled.
- Various things were rewritten in SwiftUI. Fun!
- macOS 12 is now the minimum.
- Now features a build for Apple Silicon.
Fixes
- Changes to tags did not cause the sidebar to update.
- Fixed a large memory leak for every opened repository window.
- Improved performance of the Clean panel with large file counts (by converting from
SwiftUI.List
toNSTableView
). My test case was about 100k files. - Right-clicking on a file that was not selected would bring up a menu full of disabled commands.
1.0b16
New & changed
- Requires macOS 11.3
- Clone command for cloning local and remote repositories
- Clean command for deleting untracked and ignored files, as with
git clean
- User interface updates for macOS 11
- Most interface icons changed to SF Symbols
- macOS 11 style integrated toolbar with full-height sidebar (and the proxy icon is finally draggable)
- Clicking on the SHA in the commit info panel copies it to the clipboard (this panel was also rewritten in SwiftUI, yay!)
- Refs (branches and tags) can be displayed in a separate column in the history list
Fixes
- Multi-line config settings were getting corrupted if Xit saved changes to your config file. This was fixed by adding an app level config file stored in ~/Library/Application Support/xit.config.
- Fast-forward merges could sometimes lose non-conflicting workspace changes. The workaround for now is to use command-line Git for fast-forward merges.
- Minor improvements to Bitbucket integration.
- Fixed issues with split views on macOS 11.
- Improved performance (again) for loading TeamCity build results.
- Better matching when finding TeamCity builds - matching host name and path, ignoring user name or http vs ssh.
- The history list didn't always resize the graph column as you resized the window.
- Stage, Unstage, and Revert buttons were shown for stashes.
1.0b15
New & Changed
- The commit history is now loaded partially at first, and then more as needed if you scroll down far enough.
- Fetch, Push, and Pull buttons in the toolbar now have menus for selecting specific remotes or branches.
- Implemented the Reset command.
- Added support for GitLab accounts so your password (or access token) can automatically be used when pushing or pulling.
- Workspace status is now displayed in window tabs.
- Option to show committer name, committer date, and SHA columns in the history list
- Option (on by default) to strip comment lines in commit messages
- Window toolbar redone using actual toolbar items instead of one big custom view. Mainly this lays the groundwork for a macOS Big Sur style interface.
Fixes
- The history graph would become corrupted when there were more than 256 branch lines passing through a commit.
- Creating a new commit, and then selecting it in the history list, would end up with the old branch head selected instead.
- Attempting to reopen a repository that has been deleted would cause a crash.
- Sidebar status indicators now update after pushing to a remote.
1.0b14
New & Changed
- Filter field at the bottom of the sidebar.
- Add button at the bottom of the sidebar, with a menu for creating branches, tags, and remotes.
- Option (on by default) to automatically reset the Amend checkbox after committing or switching branches.
- Fetch and pull redone to use libgit2 directly instead of Objective Git. Hopefully ssh support was improved somewhat in the process.
- File previews redone to use the new
WKWebView
API instead of the old deprecatedWebView
. - New icons for the fetch, push and pull buttons.
- An ellipsis is now shown in the history list when a commit message has more than one line.
Fixes
- Refreshing build and pull request status could be very slow, causing the app to hang for a while, on repositories with large numbers of branches. It can still be slow, but it's better.
- "This hunk cannot be applied" was shown on new files.
- "This is a binary file" was shown for folders.
- Build status indicators in the sidebar were sometimes not clickable.
- Build status and pull requests were not getting loaded initially, and so were not shown until the first 5-minute refresh.
- The branch list in the title bar popup is alphabetized
1.0b13
New
- Confirmation dialogs for discarding hunks and stashes
- Improved finding passwords in the keychain for Git network operations (push & fetch)
- The sidebar retains expanded items when reloading
- New build status icons, including an in-progress indicator
Fixes
- The "Check Out" command was accidentally called Rename
- In outline view, deleted files showed up under duplicate folder entries
- Stage and Unstage commands were shown when a stash was selected
- "Create Tracking Branch" is now only enabled when a remote branch is selected
- Closing a window when a password prompt was about to appear could hang the app
- Rearranged the new/edit account sheet
- Different repository windows showing forks/clones of the same repository no longer synchronize their selections
- The Edit Account sheet shows the correct service type
- Accounts can be edited even if the password is missing in the Keychain
- Fixed a crash that could occasionally happen when displaying new file diffs
1.0b12
Features
- Multiple files can be selected in the file lists
- Account settings can be edited in Preferences
- Option to automatically collapse the history list when in staging view
- The build status popover now has a refresh button
- Added a refresh button to reload the Staged and Workspace lists
Fixes
- Updated to the latest libgit2 which should fix the crash at launch when libcrypto is not installed.
- Various dark mode improvements, such as updating the diff/blame views when switching appearances
- Between the workspace list and the staged list, only one will have a selection, to make it clearer what file contents are being shown
- The "new tag" dialog no longer requires a slash in the tag name
- Fixed "this hunk cannot be applied" appearing in commit diffs
- Search and view button states are updated when splitters are moved
- Improved load time with a large number of remote branches
- Alerts are shown when errors happen with online services (Bitbucket and TeamCity)
- Improved sorting of branches and tags in the sidebar, particularly when they contain numbers (10 no longer goes between 1 and 2)
- Detecting changes in workspace files had stopped working. Fixed that.
- A deadlock could happen if the sidebar tried to reload while a password dialog was open for a network operation.
1.0b11
New things:
- When you sign in to Bitbucket Server, icons for pull requests from a registered remote are shown on the source branches in the sidebar. The icons have a popup menu for approving, viewing in the browser, etc. PRs from other repositories, and support for other services (like GitHub), will come later.
- A new Stash button in the toolbar with various commands and options
Fixes:
- Fixed a crash that could happen when something triggered a refresh
- Fixed spurious refreshing that could happen when opening blame view or on a regular check for file changes
- Fixed blame view sometimes loading multiple times for a file
- When selecting a remote branch, the sidebar no longer selects the corresponding local branch instead
- Fixed the sidebar cloud icons being clickable when they were not in the warning state
- Fixed the crash when canceling the password prompt
- Improved sizing of the various split views when the window is resized
1.0b10
New things:
- Find feature to search commits by summary, name/email, or SHA.
- Better support for ssh in remotes.
- New command for creating a local branch tracking a remote branch.
- The Revert command, for reverting changed workspace files, now has a confirmation dialog.
- Show Ignored Files now works. Tree view hides them when the option is off (it used to always show them).
- Opening a repository dismisses the Open panel if it's showing.
Fixes:
- Improved load times for large repositories. I'm pretty sure it used to be this fast, and now it is again.
- Fixed some cases where TeamCity build status wasn't showing correctly in the sidebar.
- Fixed some memory leaks.
- Closing a window before it finishes processing the history list will abort processing.
1.0b9
New & improved:
- Built with Xcode 10 beta 2 with dark mode support in macOS Mojave
- Staging view now has separate lists for workspace and staged files
- Amend commit option added
- Diff and text previews have wrapping options
- Diff preview identifies binary files instead of saying there are no changes
- Sidebar, file list, and history list have tool tips for names that are cut off
- Optimized loading of the file tree when switching selected commits
- Preferences window is now resizable
Fixed:
- QuickLook preview sometimes failed to update or showed the previously selected file
- Blame would hang on staged files unless they're tiny
- Fixed some memory leaks
- When copying from the text preview, blank lines are now included
- Stage & Unstage context menu commands in the file list are now functional
- The sidebar updates after popping a stash
1.0b8
- The history list begins displaying commits before the entire list has loaded, so you can get to work faster with large repositories
- A Revert command has been added for locally changed files
- Merge commits display with gray text (this can be turned off in Preferences)
- Entirely new application icon!
Full list of changes: https://github.com/Uncommon/Xit/milestone/11?closed=1