GitKraken Git GUI 2.x
Behold the evolution of GitKraken! Find out what’s new, what’s fixed, or just take a trip down memory lane with a nostalgic swagger, remembering those bugs of yesterday.
Tuesday, August 15th, 2017
We bumped a thing.
- Updated underlying Electron version to v1.6.11. This should help with stability, memory leak issues, and the     mystery runes our dear Linux users encountered.
Tuesday, July 18th, 2017
Go-Go Gadgets Galore!
- Go-go gadget Fuzzy Finder is even more efficient. If you haven’t started using the Fuzzy Finder yet, now is the time!
- Start a pull request or create a tag.
- Access the Git flow panel.
- “Search Commits” will take you back to the graph to view your selection, if the graph wasn’t visible prior to your search.
- Wowsers! Git hooks are better too!
pre-commitGit hook can now modify the files of the same commit it’s running.
- Git hooks that have control characters (like ANSI escape codes) are rendered correctly when their logs are displayed on failure.
- On Windows, you can now browse for your
sh.exefile for Git hooks.
- Some prefer tabs, some prefer spaces, but at least now you can configure how many spaces should render for tabs in diff view.
- A quick right-click will now give you the option to delete repos from the repository management panel.
- We heard your requests for more feedback with blank diffs:
- A filemode change will now let you know that the contents have not changed.
- A whitespace change when "Ignore Whitespace” is checked, will give you a heads up that you need to uncheck it.
- A binary file change will tell you that GitKraken can’t display those.
- Local branches can now be renamed—because we all make tpyos.
- GitKraken used to crash when trying to parse empty reflog messages; sorry about that chief, it’s fixed.
- We trust that you read the EULA, so you can close that modal now without having to refresh GitKraken.
- Merge conflict resolution on Windows no longer adds extra empty lines. Resolve conflicts with confidence again!
- When the Clone Repo form is submitted, its input is cleared.
- Command/Ctrl+P now clears the Fuzzy Finder, ah efficiency.
- You’ll no longer get an error when you "Unstage All” from the Fuzzy Finder when there is no WIP node.
Monday, May 22nd, 2017
Elementary, my dear Watson.
- The new and improved Fuzzy Finder combines the Command Palette and the Fuzzy Finder all into one keyboard shortcut ⌘ | CtrlP which allows you to:
- Push, pull, or manage account
- Open, clone, or initialize a repo
Search through blame, history, commits, and more
GitKraken will now inform you with a scarlet message when an external rebase is running. Once the rebase finishes, it will literally release the kraken.
Did you know Watson prefers Mac? He was adamant about changing the title bar colour, and fellow Mac users will hopefully be delighted in his tastes.
The loading spinners next to the remote names during a fetch had mysteriously vanished, but some well placed clues allowed us to track them down and return them to their rightful homes.
Longer submodule names now correctly align in the left panel. 🎉
The sight of a submodule caused the breadcrumb to lose its styling, a quick lesson in mindfulness has rectified the issue.
A user’s identity is no longer masked when logging in via OAuth and switching between a Free account and a Pro account.
Sir Arthur Conan Doyle can rest easy,
Commit Changes to 1 Filesmessage is now correctly pluralized (i.e.
Commit Changes to 1 File).
If a Gitflow feature with conflicts is finished, there is no longer an extraneous
No such file MERGE_MSGtoast.
When merging with Gitflow, messages would look like
Merge branch 'undefined<branch name>' into undefined. After some words of encouragement, it works correctly.
The HEAD commit no longer has cherrypick as an option in the context menu.
If no HTTPS credentials were being stored, GitKraken still allowed users to Forget All credentials in Preferences. The constables did not like that, so we threw them a bone.
If a PR fetch failed, the error toast said
repostorywhen it should have said
repository.Cheers to our users for sniffing that out.
Commit messages passed to Git Hooks during a non-conflicted merge were missing newlines. They have been found, thankfully.
Tuesday, May 2, 2017
Like the Flash, GitKraken now has the power of superspeed. In addition to numerous improvements and fixes across the board, this release also drastically speeds things up for Windows users.
Oh, and checkout operations are as much as 3 times faster than SlowTree, err... I mean SourceTree (including their latest v2).
- (Windows) File history rendering is now much faster.
- (Windows) Rebasing a series of commits is now quicker.
- (Windows) Checkouts are more than 60% faster than they were in v2.4.
- (All OSs) Checkout speeds improved across the board.
- (All OSs) Graph rendering is more efficient.
- There’s nothing like a good, old-fashioned error. We’ve updated some of GitKraken’s error messages to be more descriptive.
- We’ve also better named stashes.
- When opening a file’s history, the first diff is now shown as a priority, before loading the rest of the history.
- When adding a new SSH key, hitting the enter key will now add the key, rather than you having to click a button like some kind of caveman.
Commitbutton now includes a file count number.
- The command palette was not always showing every option it was supposed to show. It now shows everything it should.
- Right-clicking a checked out commit no longer shows the cherry-pick option.
- “Ignore whitespace” has sometimes worked, sometimes not, and fluctuated between the two states. It now super works.
- The diff viewer was also overlapping lines of code at times, which made review tricky. Everything is orderly once more.
- Generating a new SSH key in Ubuntu could crash GitKraken. That’s a bug and we have fixed it, with apologies.
- Fixed an issue where double-clicking a ref inside hidden remote would trigger an error. No more unhiding and rehiding!
- When blaming, you need your facts in hand. Viewing the blame entry in the file history now includes the date and commit title.
- Cloning a repo with submodules would throw an error if the user chose to initialize the submodules. This should now work as expected.
- Undoing the deletion of a branch would restore the branch, but would fail to retain any upstream that had been set. GitKraken now remembers all.
- Fixed some quirky styling to the toolbar breadcrumbs.
- Repositories with the same name can now exist and appear in the same project group. Though this was allowed before, it resulted in only one of the repos being listed in the group. Now all repos display as they should.
- Submodules will no longer appear in project groups by default.
- Following a rename in the blame view meant you couldn’t get back to where you started, but now you can!
- Navigating blames now retains your scroll position to help you better trace code changes.
- When performing a checkout, sometimes the breadcrumb in the tool bar has a spinner next to the branch that never goes away, it does now!
- If a submodule exists on branch B but not on branch A, switching from branch A to branch B now checks out the submodule.
Tuesday, April 18, 2017
It's a quality of life thing
Improvements and Fixes
- Dude, your WIP is showing. Submodules now update correctly when switching branches so a work-in-progress isn’t incorrectly created as if you changed something.
- Inception-themed performance improvement: Submodules now initialize faster and recursively (if a submodule has submodules).
Repo Management, project group names can now be edited with a simple double-click.
Repo Management, found repos sorting has been upgraded from
sort of kind of alphabetical and a little bit the order in which foundto
actually alphabetical, for real.
- Resolving merge conflicts in GK no longer replaces CRLF line endings with LF line-endings. Believe it or not, this happened to some users.
- If you check out a remote beyond the graph history (>2000 commits), GitKraken correctly creates a local ref and works now.
- Deleting a file then creating a branch at the same commit would resurrect the deleted file from the grave. Yes, it’s Easter; no, this doesn't make it ok. It’s incorrect behavior, and we’ve fixed it.
- Using GitKraken in fullscreen mode? Closing GitKraken in fullscreen mode? Opening it again? If this sounds like you, you’re going to love this one: The app will now remember if it was closed in fullscreen mode and, if it was, will launch in fullscreen mode.
- GitKraken also now remembers where it was positioned after being closed while maximized or fullscreen in Windows.
- In the fuzzy finder, “finder”, “explorer”, and “folder” have been included as additional keywords to
open in file manager. Did you know we had a fuzzy finder? Oh you’ll just love it! Use the keyboard shortcut command + p (Mac) / Ctrl + p (Windows/Linux) and start typing.
- Keif got better at math and the commit sorting algorithm was improved as a result. You’ll notice an increase in application speed when refreshing.
- Fixed issue where pushing a branch that doesn’t have an upstream ref would cause an error.
- In the
Keyboard Shortcutsmodal, the shortcut for “filter left panel” is now correct. FYI that shortcut is command + option + F (Mac) / Ctrl + Alt + F (Windows/Linux).
- If you delete a local branch that was not checked out and then try to undo that action, it actually undoes the action, rather than not.
UI fixes / improvements* Lightened the shadows between the graph and the ref label / commit message columns in light theme. * Fixed "disabled" button styles in toolbar when certain actions are in progress. * Styles for new branch name input are now consistent with other inputs. * Fixed some margin and button styling issues in file view. * "Default" button styling is improved and more consistent throughout the application.
Thursday, April 6, 2017
- Fixes a frequent refresh issue when the system is completely idle.
prepare-commit-msgfailed during a conflicted merge, cherrypick, or revert, the pending commit message displayed in GitKraken would be cleared instead of persisting like it oughta. It behaves properly now.
- Created a fun new game called "How Soon Can We Release 2.3.4?" (Price is Right rules).
Wednesday, April 5, 2017
- When creating a commit, the
prepare-commit-msghook looks at
.git/COMMIT_EDITMSG. Nothing wrong with that, right? Correct, but there was a problem: that file wasn't being populated with data before the hook was fired, and whatever
.git/COMMIT_EDITMSGwas being ignored. That is now fixed. Sorry!
- THREE releases in one week! Lucky you!
Monday, April 3, 2017
- If you managed to download 2.3.0, you almost certainly experienced sign-in issues. This release fixes the issue. Sorry about that.
- The amount of time between a major release and the need for a hotfix release has been reduced significantly.
Monday, April 3, 2017
Git hooks are here, with that fresh, new-feature smell!
- Git hooks! One thing that has prevented some users and teams from being able to adopt GitKraken is the lack of Git hooks support. Until today! You can now create custom scripts that fire off at certain points during Git processes. GitKraken does not require that you install Git on your system, so until now, that independence had meant no Git hooks support. But, with a lot of blood, sweat and tears, v2.3 allows you to hook your way to a bounty of control over your Git actions! For more information and a complete list of the hooks supported by GitKraken, check out the Git hooks page on GitKraken's support site.
- Localized dates on commits:
Morrissey once wrote:
When you say it's gonna happen "now" Well when exactly do you mean? See I've already waited too long And all my hope is gone
I don’t think it’s too dramatic to say that this is how many of you felt, trapped inside an USA date format. It was unacceptable that users might not know how soon “now” is, was, or could be.. GitKraken now updates the date format based on your system locale, so you can view your dates in a sensical manner, because you are human and you need to be loved, just like everybody else does. * User onboarding: When we drop you into a new utopian land of wonder and beauty, you should probably still know where the restrooms are. With v2.3, we have implemented a rather pleasant onboarding experience for those who need a little help getting to know their way around. This onboarding process includes links to our support site intro video and Slack community. * Look at you with all your branches pointing to the same commit! Good news: The ref labels that describe branches and tags on the left side of the graph have been redesigned to more clearly display multiple branches pointing to the same commit, and generally improve readability. Those collapsed groups of labels now expand into a vertical list when hovered instead of the difficult-to-read horizontal row. You can also drag-and-drop labels between expanded lists to merge, rebase, reset, etc. with ease.
- Having trouble seeing which branch is checked out? We added a check icon to the label of the branch you’ve got ‘checked’ out. Checked. Get it? Punny!
- If you're hiding a remote, we're collapsing the remote. That's our promise to you. Don't worry, you can still expand it back out after you unhide it.
- If you collapse a folder that contains the currently-checked-out branch, that'll be highlighted to show you it contains that checked-out branch.
- Pull requests can now be checked out from the left panel.
- In the repo management view, you can now right-click on a project group and there’s an option to open that folder in your OS's file manager.
- In the repo management view, the
Recently Openedlist no longer shows the currently open repo. Yes, it is the most recently-opened repo. But it's still open, see? It just doesn't help having it in the list. Don't you agree?
- If you have project groups, you might notice that GitKraken finds your repos faster. That’s because GitKraken is finding them faster!
- When viewing a commit in the right panel, reversing the sort order would initiate 'Opposite Day' for your keyboard where up is down, and down is up. Fun for the keyboard, less so for the user. Order is now restored!
- For some users, adding submodules wouldn't work. For those same users, adding submodules should now work. Classic bugfix scenario.
- There is a GitLab issue that was affecting GitKraken when trying to push via HTTPS with an OAuth token. We've made a workaround for this until the GitLab issue is resolved.
- Viewing diffs in Kaleidoscope for MacOS stopped working–not ideal for a file-comparison app. It works again now, sorry.
- GitKraken now respects the CRLF/LF line endings already being used in a file, rather than enforcing one.
- With autofetch turned off, the pull request section message in the left panel doesn’t get cut off anymore.
Wednesday, March 22, 2017
- In 2.2.0, we added support for authenticated proxies, but in doing so, we actually broke proxy support for some users. In what might be today's most obvious statement: this is the one thing we didn't want to happen. We have now unbroken this support, and also implemented wider proxy support than was available in 2.2.0. So, if you could use proxies before 2.2.0, but couldn't use proxies after 2.2.0, you should now be able to use proxies again like you could before 2.2.0. If you could never use proxies, there's a chance you can now. Simple? Simple.
- Sorry, we're not done with proxy support. If you couldn't use proxies, and still can't use proxies, we've made it easier for some straightforward configuration tweaks to get you up and running. Due to the complex nature and diversity of Git setups, we can't get exhaustive with this, but for an overview, check out our FAQ on possible workarounds.
- If you used the left panel to perform an action on a stash, this action would be applied to the newest stash. Like, every time, no matter what stash you were actually trying to modify. Sorry for that unpredictable behavior–it's been fixed.
Thursday, March 9, 2017
- GitLab Integration: GitLab users rejoice! GitKraken now integrates with your accounts! Enjoy the following conveniences from within GitKraken:
- Adding and removing SSH keys: From Preferences Authentication, you can now quickly generate and manage your keys
- Initializing a repo
- Cloning a repo from a GitLab account
- Viewing GitLab remote avatars in the graph
- You can now use GitKraken on computers behind authenticated proxies!
- Users have requested that the repo management interface be tidier and more intuitive, so the new Repository Management View has been created as an entirely different way to organize and open repos. Happy now?
In the Repository Management view, users can now:
- Browse the file system for a repo to open
- Open a repo from a list of recently opened repos
- Create custom project folders that contain groups of repos: Folders that contain groups of repos can now be added to GitKraken as Project Folders which can be discretely named in the app
- You can clone and init repos as usual, don’t panic. It’s all fine.
- Avatars in the left panel for remotes: As with the graph, viewing copious remotes can get a little confusing. Remotes now display, where possible, avatars to make them more immediately identifiable.
- HTTP and proxy credentials storage: When entering a username/password for a host, GitKraken will now ask if you’d like to remember those credentials. Stored credentials can be cleared in Preferences Authentication. Sincere apologies I couldn't make this sound more interesting. I tried in a blog post too, but didn't succeed there either. Sigh.
- Hovering over a pull request in the left panel reveals a tooltip that wasn’t the easiest to read. We’ve improved the layout to be cleaner and more legible.
- Fixed an issue where GitKraken might botch permissions when generating SSH keys. This could lead to lax permissions, the key not being used, and no-one being able to have nice things. These permissions are fixed.
- Closing GitKraken and then reopening it would lose the window’s previous size, like the app knew better than you did what window size you wanted. It now respects the previous size you set, and has learned never to be so presumptuous in the future.
- Fixed an issue where the window in MacOS wouldn’t reopen if it was closed and then reopened from the dock.
- In the left panel, hiding a remote would turn the branch icons for that remote into a bunch of misfits, like in some kind of John Hughes movie. Everything now stays put and is predictable as an episode of Columbo.
- In this most ghostly of bugs, the stage/unstage buttons had the tendency to become transparent when diff view was open. Spooky fun for some, annoying for many, fixed for all!
Monday, February 13, 2017
- Remote avatars: When multiple remotes were displayed on the same ref label, it would get hard to differentiate between them. In short, they were looking California and feeling Minnesota. Now each remote has its owner's avatar attached to it so you can clearly see the difference at a glance, even if you're searching with your good eye closed.
- New remotes compatibility! Remotes on TFS 2015, TFS 2017, and VSTS that use HTTPS are now working.
- You can now use GitKraken on computers behind non-authenticated proxies!
- We've made significant performance improvements to the left panel. Especially with larger repos, you should notice snappier performance.
- Repos with a large number of tags should be faster now.
- The graph and the left panel were exhausting themselves by refreshing every time you blurred and then refocused the app, causing lag. Both the graph and the left panel have decided to chill and only refresh when absolutely necessary, meaning no more lag.
- Scrolling to commits that are more than 2 rows outside the current view now puts them in the middle of the screen. Deleting a reference would sometimes seize up the process. You're busy, you don't have time for that. Tomfoolery begone!
- Emojis are displayed on the graph again 🍆
- Selecting multiple commits once again shows the author information for those commits.
- We swapped the candy cane progress bars for the eye candy known as "Spinny Keif."
- Showing a diff between 2 branches would sometimes do the precise opposite by showing nothing, because the app would crash. This is contrary to intentions and has been fixed.
- You didn’t want two commits with identical timestamps to break the app. We get it. We fixed that. But maybe you're just too demanding, maybe you're just like my mother (she's never satisfied), why did we let this bug happen? This is what it sounds like, when devs cry.
Wednesday, January 25, 2017
Sigh. It's the obligatory x.0.1 update to the major update, and now the whole tidiness of 2.0.0 is ruined. Great, just great. :slow clap:
- We understand that you need to open submodules, and now we are sure that you can, sorry!
- Editing a submodule: This is a weird, weird thing that happened. So, here's the thing. If your submodule is in an
OKstate, editing that submodule would break the app. Now, it doesn't, which means we fixed it, and we are sorry it didn't work.
- Setting upstream on a ref with a
.in the name wouldn't work.
.hardly seems like a far out there character to include in an upstream so we fixed that right up for you.
Monday, January 23, 2017
Now, 2x Faster!
Like a kraken with a jetpack!
Hey there. How’s it going, champ? Did you enjoy the holidays? A safe and hopeful new year? It’s been a while. You know why? Because we’ve been working on a big one. The big 2.0. You probably know by now how we like to keep to a two-week development cycle, but for this release we made a decision: PERF, PERF and MORE PERF; work hard on performance overhauls, don’t release until it’s ready. The GitKraken team is proud to give you v2.0! You will find that everything is much more snappy than before. In some cases, operations are as much as 10x faster!
Usually we put our shiny new features at the top of the release notes, but with v2.0, the performance really shines, so let’s look at those items first.
- Make a commit and watch GitKraken go! Committing is completed far quicker than in previous versions.
- New year, new you: Open those repos at least 2 x faster than you could in 1.9.
- Don’t forget to thank your grandma for the $5 in your Christmas card, and for drastically improving the scroll refresh in the graph. Did you see that? No more blank spots during scroll!
- In fact, the graph scroll is also much, much faster. Do you scroll both ways? Great! Scrolling is noticeably faster on both axes.
- Scrolling through a file’s changes is significantly faster, too.
- Traversing the graph using keyboard shortcuts and the arrow keys was nice enough, but came with significant lag. Now it’s snappy and responsive.
.gitignore: A big feature request from our users is finally here! You can now select a file or folder in the file staging area, and add to the
.gitignorefile on the fly. Right-click and select Ignore. From there, you can:
- Add that specific file to
- Add all files with that file extension to
- Add all files in the same folder as the selected file to
- (If selecting a folder) add that folder to the
- Add that specific file to
Psst. GitKraken’s a bit CLI-curious! There’s a new option to open the current repo folder in terminal. Just go to File Open Terminal or use the keyboard shortcuts opt + T (Mac) / alt + T (Windows + Linux).
- Your drunk uncle might have all the great Christmas dinner stories, but can he push a commit and create a pull request at the same time? Only if he’s using GitKraken. If you haven’t yet pushed a branch to a remote, you can choose to push and start a pull request in one command. Saves clicks and time! Hic!
- Open GitKraken! Go on, try it! Look at Keif swim with delight! Watch that smile and know that, today, you made one kraken very happy.
- We polished up the visual feedback during loading operations in-app, too. Remember that embarrassing wobble in the previous version’s loady-spin? But a distant memory.
- When you're setting an upstream, you can select from available remotes instead of having to type out the fork and remote like it’s 2016. The really neat part is that GitKraken will get the gist of your most popular upstreams, and then prioritize those in the drop-down. Of course, if you want to type, you can still type.
- PRO: Profiles can once again be assigned discrete GitHub / Bitbucket accounts.
- New light and dark themes use a reduced color palette that is more consistent between themes. Notice that moodier, bluer tint to the dark theme? That was us.
- A lot of love was given to the light theme to clean up the UI and improve contrast with a new color palette.
- Input focus and mouseover styles have been added/modified to improve contrast and consistency.
- Merge resolution tool UI has been cleaned up significantly, fixing alignment issues, etc.
- Font style variations were reduced to improve legibility and generally look less wacky.
- The font used to display code has been updated for legibility and is now consistent in all views.