Giter Club home page Giter Club logo

gk-cli's Introduction

๐Ÿš€ GitKraken CLI

gk is GitKraken on the command line. It makes working across multiple repos easier with Workspaces, provides access to pull requests and issues from multiple services (GitHub, GitLab, Bitbucket, etc.), and seamlessly connects with GitKraken Client and GitLens in VS Code to visualize git information when you need it.

GitKraken CLI is available on macOS, Windows and Unix systems.

๐Ÿ“š Documentation

Check out the installation instructions and examples below. For command usage see the docs.

Installation

macOS

gk is available from Homebrew and MacPorts with the following command:

Homebrew:

brew install gitkraken-cli

MacPorts:

sudo port install gk

Or download it from the releases page and add it to your binaries folder:

mv ~/Downloads/gk /usr/local/bin/gk

Unix / Ubuntu

gk is available as a downloadable binary from the releases page. Once you have it, add it to your binaries folder:

mv ~/Downloads/gk /usr/local/bin/gk

Or create a new directory, move the binary and add it to $PATH:

mkdir "$HOME/cli"
mv ~/Downloads/gk "$HOME/cli"
export PATH="$HOME/gk:$PATH"

You can also download your corresponding package (.dev, .rpm) and install it with:

sudo apt install ./gk.deb

or

sudo rpm -i ./gk.rpm

Windows

gk is available from Winget with the following command:

winget install gitkraken.cli

You can also download it using Chocolatey:

choco install gkcli

Or download the binary from the releases page and place the gk.exe in a desired folder. Then edit your environment variables to add it to your PATH.

  1. In Search, search for Environment Variables.
  2. Click on the Edit the system environment variables result.
  3. In the modal, click on the Environment Variables... button.
  4. In the System Variables section, scroll until you find the PATH variable. Click on it.
    • If it doesn't exist, create a variable with the name PATH.
  5. Add the path to the gk binary at the end.

Troubleshooting

gk login freezes after authenticating in browser

This problem is due to the browser. Currently we know that Safari and Brave do not allow to respond to localhost through port 1314. To fix this, change your default browser or copy the URL before the redirect and open it in another browser.

gk from Oh-My-Zsh

Oh-My-Zsh has gitk aliased as gk and that can create some problems. To fix this, type in your terminal:

unalias gk

Examples

๐Ÿค Create Workspaces to group repos

gk ws create

GitKraken workspaces associate groups of repos and set the context for helpful commands that can operate on, or get information for, multiple repos at once. There are two types of workspaces:

Local

Local Workspaces exist only on your machine.

Cloud

Cloud Workspaces are accessible on any machine, and can be connected to hosting and issue providers like GitHub and GitLab to get additional information about pull requests and issues. Share Cloud Workspaces with your team to improve onboarding with the ability to clone all repos at once. To enable this extra functionality, Cloud Workspaces require a free GitKraken account. We are continuing to evolve and improve GitKraken Workspaces and welcome any feedback.

gk-ws-create-demo

Adding and locating repos

gk ws add-repo

This will add a new repo to a workspace either by path or remote URL.

gk ws locate

If you're accessing a Cloud Workspace for the first time, you might need to locate the local repos on your machine. Run this command in the directory where youre repos are located so gk knows where they are.

gk ws clone

You can also clone all repos in a Workspace at once into a single directory. This is helpful for onboarding when your team works on multiple repos.

๐ŸŽฌ Perform git actions on multiple repos at once

gk ws [action]

In any workspace, you can perform git operations like fetch, pull, push, and checkout across all repos in the workspace.

๐Ÿ“‹ Get pull requests and issues

gk provider add

Before fetching pull requests and issues, ensure that you have the appropriate provider (GitHub, GitLab, etc.) connected. This will open a browser to authenticate.

gk pr list

When a Cloud Workspace has a provider connected, you can list all pull requests and issues for repos in the workspace, and view details for a specific one.

gk-pr-list-demo

gk pr view

Returns a list of all pull requests for all repos in a workspace. Type to search for a specific pull request and press enter to view details.

gk-pr-view-demo

๐Ÿ“ˆ Pull Request Insights

gk ws insights

See the following metrics for all repositories in a Cloud Workspace. The default time period is 7 days, but can be increased to 14 days with any paid GitKraken license.

  • Average Cycle Time
  • Average Throughput
  • Merge Rate
  • Opened Pull Requests
  • Merged Pull Requests
  • Closed Pull Requests

gk-ws-insights-demo

โœจ Visual Commit Graph

gk ws graph

Open a visual graph of the repo in your current directory in either GitKraken Client or GitLens in VS Code.

gk-graph-demo.mov

gk-cli's People

Contributors

jbuinfo avatar justinrobots avatar sergiolms avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.