GitKraken Client Documentation

Downloads  
Contact support  
Feedback  
GitKraken.com  
GitKraken Status  

Experimental Features

Coming from the icy depths of the Git ocean are GitKraken Client experimental features! These are ideas we are trying out that are still being worked on, but we want to share with the world sooner.


Experimental Features

Navigate to Preferences Experimental to access the experimental features menu.

Experimental Features are still under development – treat these as an early sneak peek at some of the new functionality we’re working on at GitKraken. Experimental features may not work as intended and could be changed or removed in the future. These settings are entirely optional and can be turned off at any time.

If you do experience issues, or have any other feedback, please reach out to us Contact Support.


Git Executable

When this setting is enabled, GitKraken Client will utilize the Git executable instead of the NodeGit library for certain Git actions including fetching and committing. This may provide increased performance and compatibility with certain projects and development environments. This is a partial implementation and will only affect some aspects of Git within GitKraken Client – the amount of Git commands using the Git executable will increase with each release.

Use Git Executable: turn on this experimental feature! Check the box to immediately apply the setting.

Git Executable: We automatically include Git with GitKraken Client. You can select other from other versions that are installed on your system.

Features using the Git Executable

Find below a list of features using the Git binary if the Git Executable experimental setting is enabled. Anything not listed is still using LibGit2/NodeGit paths.

Added in 9.4.0:

  • refresh commits (some of the commit info displayed in the graph)
  • verify commit gpg signature
  • commit
  • fetch
  • branch ahead/behind count (e.g. from pull request panel)
  • merge base calculation (e.g. from right clicking a local branch in the left panel)
  • branch rename
  • branch delete (local branch only)

Added in 9.5.0:

  • remote branch delete
  • tag delete (local and remote)

Added in 9.6.0:

  • support for SSH commit signing (configured from your gitconfig)
    • actions that do not currently use the Git Executable (like rebasing) will still use GPG for signing
  • support for SSH strict host key checking

Added in 9.6.1:

  • push
  • support for streaming Git hooks output

Added in 9.7.0:

  • Signing tags with SSH

Added in 9.9.0:

  • Added revert commit support.
  • Added pageant ssh agent support.

Added in 9.10.0:

  • Added Pull (fast-forward if possible) and Pull (fast-forward only) support.
  • Added cherry-pick support

Added in 9.11.0:

  • Added merge support.
  • Add pull support when the selected branch is not active.
  • Added new log level GIT_SILLY to get extra info about git and ssh commands in logs.

Added in 9.12.0:

  • Added clone support.

Added in 9.13.0:

  • Added rebase support.
  • Added pull (rebase) support.
  • Added checkout suppport.
  • LFS improvements by calling git-lfs directly.

AI Commit Message Generation

With this setting enabled, GitKraken Client will have the ability to generate commit messages from any staged changes. You can access this feature from the Command Palette (⌘P/Ctrl P, or the magic wand icon ✨ in the toolbar), or you can click the sparkle icon () in the commit panel when you have staged changes.

This feature requires sending a diff of your code changes to OpenAI. Ensure your code does not contain sensitive information before generating a commit message.

Generate Commit Messages with AI: turn on this experimental feature! Check the box to immediately enable the setting.

OpenAI API Key: Your key generated by OpenAI. GitKraken Client uses gpt-3.5-turbo model for generating commit messages.

Prompt: This is what is sent to OpenAI. We have it pre-filled to hopefully get Open AI on the right track. However, you can enter whatever you want here and it will be sent when you click ✨.

How to use in GitKraken Client

Once you have AI commit message generation enabled you will see ✨ sparkles ✨ in the commit message field. Stage your changes and click this button to get the AI magic started!

Once the commit message has been generated, you can still fully edit the message before committing. You can also click the ✨ to have OpenAI try again.

Be aware that using OpenAI/chatGPT has a cost. At the time of this writing, the maximum cost per request is about $0.02. OpenAI offers free trial accounts with $5.00 of credit to get started.


More about OpenAI

Login or create an account:
https://chat.openai.com/auth/login

OpenAI’s overview and documentation pages to learn more about how it works:
https://platform.openai.com/

To specifically generate an API key for GitKraken Client to use:
https://platform.openai.com/account/api-keys


Cloud Patches

What are Cloud Patches and why would you want to use them

A Cloud Patch is a Git patch that GitKraken securely stores for you so it can be easily shared with others across GitKraken Client, GitLens, and the GitKraken CLI. The patch is directly transferred from your machine into secure storage.

Cloud Patches allow the ability to engage early with your team before a pull request. They can be created as soon as you have a work in progress. This can help with collaborating on changes prior to a pull request and minimize the delay of pull request reviews.

How to setup Cloud Patches

To enable Cloud Patches in GitKraken Client, navigate to Preferences > Experimental and check the following options:

  • Use Cloud Patches
  • Use Git Executable

To disable Cloud Patches per client, simply uncheck Use Cloud Patches.

How to work with Cloud Patches

To create a Cloud Patch, click the share icon in the WIP commit panel and stage the changes you want to include in the Cloud Patch. You can also create a Cloud Patch from a commit by right-clicking on a commit in the Commit Graph and selecting Share commit as Cloud Patch. Once created, you can select Copy Cloud Patch link from the toast or by right-clicking a Cloud Patch in the left panel where all your Cloud Patches will be listed.

When creating a Cloud Patch, you have the following sharing options:

  • Anyone with the link: Anyone that has access to the public link will be able to work with the Cloud Patch.

  • Anyone in my org: Anyone in the GitKraken Organization will be able to work with the Cloud Patch. They will be required to authenticate with a GitKraken account to access it.

  • Only collaborators: Only users in the GitKraken Organization who have been selected when sharing will be able to work with the Cloud Patch. They will be required to authenticate with a GitKraken account to access it.

Cloud Patches shared with you can be viewed in the Cloud Patches Left Panel section under Shared with Me.

Cloud Patch links can be shared with users to open the Cloud Patch in GitKraken Client or GitLens. When a Cloud Patch link is opened, the user will be prompted to open the client, clone or open the repository if not known to GitKraken Client, and then select the base branch to apply the patch to. From here, they can simply select apply patch to <branch>.

To delete a cloud path, right-click it and select Delete Cloud Patch.

Self-Hosting Cloud Patch data

If you do not want your Cloud Patch data stored on GitKraken Servers, we offer the ability for you to host Cloud Patches on your own AWS S3 storage instance. For more information on configuring this, see our documentation here.

Have feedback about this article? Did we miss something? Let us know!
On this page