/gh-sherpa

Streamline branch and pull request creation for Jira or GitHub issues from command line

Primary LanguageGoApache License 2.0Apache-2.0

Bugs Maintainability RatingReliability Rating

Sherpa extension for GitHub CLI

Sherpa for GitHub CLI makes it easy for you to create branches and pull requests associated with any GitHub or Jira issue.

This extension retrieves the type of issue (User Story, Bug, Technical Improvement, etc) and creates a branch or pull request associated with that issue, following the contribution model you define in a configuration file.

Create PR

Table of contents

Prerequisites

  • An available GitHub account.
  • GitHub CLI (version 2.0.0 or higher) configured and authenticated in your development environment.
  • Bash: Supports Linux, MacOS and Windows (for the latter, we recommend using WSL2).

Installation

Make sure you meet the prerequisites first.

You can install this extension just running this command from your terminal:

gh extension install InditexTech/gh-sherpa

Upgrade

If you have already installed this extension and you want to upgrade it, so, you should run this command from your terminal:

gh extension upgrade sherpa

Remove

To remove this extension just run:

gh extension remove sherpa

Configuration

Sherpa uses different issue types (feature, bugfix, hotfix, refactoring, etc) when mapping an issue with its corresponding branch prefix.

Default configuration

By default, it will use the internal/config/default-config.yml configuration file to perform these mappings.

Custom configuration

Otherwise, if you wish customize the different issue types, branch prefixes, etc, so, you can create your own configuration file localed in $HOME/.config/sherpa/config.yml from the default config file.

If you are using Jira as issue tracker, so, the first time you run a command it will ask you to configure Jira credentials and then proceed to create the custom configuration file with the provided Jira credentials.

Usage

After installing this extension in your development environment, you can know the available commands in the USAGE.md file.

Contribute

Before developing any new feature or fix, please, check the CONTRIBUTING.md file. You will find there the steps to contribute along with development and testing guidelines.

Security

If you find a security vulnerability in this project, please, check the SECURITY.md file to know how to report it.