Xit Versions Save

Mac OS X Git GUI

1.0b17

1 year ago

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 to NSTableView). 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

2 years ago

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

3 years ago

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

4 years ago

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 deprecated WebView.
  • 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

4 years ago

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

5 years ago

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

5 years ago

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

5 years ago

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

5 years ago

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

6 years ago
  • 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