Seamless GitHub PR management from the command-line

Maiao

Main branch build License GitHub all releases downloads

A sane review workflow with GitHub PRs

Maiao provides the git review command, which will publish a PR for every new commit in your local main branch.

Name inspiration

As maiao encourages users to create smaller and nicer commits in their pull requests, it has been given the name of a tiny island:

TL;DR

You can find more information in the getting started page.

Owner
Comments
  • Missing release

    Missing release

    Hi! I see the latest tag here was released on 10 Dec 2021 but the latest PR merged into the master branch was from 19 Dec 2021.

    Maybe it's worth releasing a 1.0.1?

    Thanks!

  • Use github API to determine default branch

    Use github API to determine default branch

    Context

    In newer repositories, the default branch is now main instead of master.

    Problem

    In the current implementation, maiao is not aware of the github settings and is restricted to the local ones, that may mismatch. This causes a reference not found error.

    Solution

    Update the pull requester interface to allow retrieving the repository settings and determine the relevant default branch

    Committer details Local-Branch: HEAD
    Related changes
    Future changes
    Skip github upsert integration tests when permission is denied (#3) Context ---

    Since we have opensourced maiao, the test repository is running in github.com. Not all integrations and developments have access to this integration repository, resulting to test failing. This is particularly the case within GitHub codespaces.

    Goal

    Make sure tests passes when developing maiao under github codespaces

    Ensure git https calls are authenticated. (#4) Context ---

    When moving to github.com and developing with codespaces, we find out that the use of https endpoint is not completely supported by go-git. Specially, go-git would not call the relevant git credential helper to inject the required authentication.

    Goal

    Make sure git review calls done with https endpoints works

  • Fix Commit message parser

    Fix Commit message parser

    With the current (naive) commit message parser, any line that includes a colon (:) will basically be consider a HEADER. That becomes a problem if you try to include an HTTP link in your commit message. It will be consider a HEADER and the removed from the final Pull Request message.

    For example, if your commit message was:

    Fixed critical security vulnerability
    
    Vulnerability reported [here](http://www.maiao.com)
    
    As you can read in the previous link it is really severe
    

    Maiao will craft a PR that will read:

    Fixed critical security vulnerability
    
    As you can read in the previous link it is really severe
    

    Leaving a broken message

    Proposed solution

    It is kinda of naive as well. It assumes that, in a header, the colon : will NEVER be followed by an slash /

  • Ensure git https calls are authenticated.

    Ensure git https calls are authenticated.

    Context

    When moving to github.com and developing with codespaces, we find out that the use of https endpoint is not completely supported by go-git. Specially, go-git would not call the relevant git credential helper to inject the required authentication.

    Goal

    Make sure git review calls done with https endpoints works

    Committer details Local-Branch: HEAD
  • Skip github upsert integration tests when permission is denied

    Skip github upsert integration tests when permission is denied

    Context

    Since we have opensourced maiao, the test repository is running in github.com. Not all integrations and developments have access to this integration repository, resulting to test failing. This is particularly the case within GitHub codespaces.

    Goal

    Make sure tests passes when developing maiao under github codespaces

    Committer details Local-Branch: HEAD
    Related changes
    Future changes
    Ensure git https calls are authenticated. (#4) Context ---

    When moving to github.com and developing with codespaces, we find out that the use of https endpoint is not completely supported by go-git. Specially, go-git would not call the relevant git credential helper to inject the required authentication.

    Goal

    Make sure git review calls done with https endpoints works

  • Better support for Github Enterprise

    Better support for Github Enterprise

    Background

    People may use Maiao for Github Enterprise and github.com.

    Problem

    Currently, the burden of changing the GITHUB_TOKEN environment variable is on the user. If the user doesn't want to set a .netrc file for different hosts, they need to things such as export GITHUB_TOKEN=$GITHUB_ENTERPRISE_TOKEN, which is not very friendly.

    Goal

    To support domains out of github.com through the GITHUB_ENTERPRISE_TOKEN environment variable.

    Caveats

    To avoid breaking changes with the current API, there's a fallback for domains other than github.com to search for the GITHUB_TOKEN.

    Committer details Local-Branch: main
Related tags
git-xargs is a command-line tool (CLI) for making updates across multiple GitHub repositories with a single command
git-xargs is a command-line tool (CLI) for making updates across multiple GitHub repositories with a single command

git-xargs is a command-line tool (CLI) for making updates across multiple GitHub repositories with a single command. You give git-xargs:

Feb 5, 2022
An open-source GitLab command line tool bringing GitLab's cool features to your command line
An open-source GitLab command line tool bringing GitLab's cool features to your command line

GLab is an open source GitLab CLI tool bringing GitLab to your terminal next to where you are already working with git and your code without switching

Dec 30, 2022
A command line tool that builds and (re)starts your web application everytime you save a Go or template fileA command line tool that builds and (re)starts your web application everytime you save a Go or template file

# Fresh Fresh is a command line tool that builds and (re)starts your web application everytime you save a Go or template file. If the web framework yo

Nov 22, 2021
A command line tool to prompt for a value to be included in another command line.

readval is a command line tool which is designed for one specific purpose—to prompt for a value to be included in another command line. readval prints

Dec 22, 2021
GitHub’s official command line tool
GitHub’s official command line tool

GitHub CLI gh is GitHub on the command line. It brings pull requests, issues, and other GitHub concepts to the terminal next to where you are already

Jan 7, 2023
github stats from the command line
github stats from the command line

Retrieve GitHub statistics per username from the command line: no need to open the browser anymore!

Sep 8, 2022
A command-line to create a pull request to review the entire content of a Github repository.

Pull Request Me Pull Request Me (PRMe) creates a pull request for the entire content of a Github repository. This is useful to solicit review comments

Nov 2, 2021
GitHub on the command line with golang
GitHub on the command line with golang

GitHub CLI gh is GitHub on the command line. It brings pull requests, issues, and other GitHub concepts to the terminal next to where you are already

Dec 31, 2021
Simple command line Github Search

ghs is a simple command line tool which will open the corresponding url for your github search in your default web browser.

Nov 10, 2021
gh is GitHub on the command line
gh is GitHub on the command line

gh is GitHub on the command line. It brings pull requests, issues, and other GitHub concepts to the terminal next to where you are already working with git and your code.

Nov 10, 2021
Gh: GitHub on the command line
Gh: GitHub on the command line

GitHub CLI gh is GitHub on the command line. It brings pull requests, issues, and other GitHub concepts to the terminal next to where you are already

Jan 5, 2022
A command line utility for labeling GitHub issues and pull requests

A command line utility for labeling GitHub issues and pull requests

Jan 8, 2023
Simple command line tool helper to integrate with hashicorp vault & github api

Overview CI/CD Toolkit is small command line tool helper to integrate with vault secret kv management & github api We can use simple command to genera

Apr 2, 2022
Command-line utility to grab Github gists from your own account.
Command-line utility to grab Github gists from your own account.

gistfetch Command-line utility to grab Github gists from your own account. How do I use this? Add an API token with permissions to read Gists Fetch th

Dec 14, 2021
gh is GitHub on the command line.
gh is GitHub on the command line.

gh is GitHub on the command line. It brings pull requests, issues, and other GitHub concepts to the terminal next to where you are already working with git and your code.

Mar 22, 2022
Go package to make lightweight ASCII line graph ╭┈╯ in command line apps with no other dependencies.
Go package to make lightweight ASCII line graph ╭┈╯ in command line apps with no other dependencies.

asciigraph Go package to make lightweight ASCII line graphs ╭┈╯. Installation go get github.com/guptarohit/asciigraph Usage Basic graph package main

Jan 8, 2023
Package command provide simple API to create modern command-line interface

Package command Package command provide simple API to create modern command-line interface, mainly for lightweight usage, inspired by cobra Usage pack

Jan 16, 2022
A command line tool for simplified docker volume command built with go

dockervol A command line tool for simplified docker volume command built with go. Features: Remove anonymous volume (beta) Remove volume by matching n

Dec 18, 2021
Watcher - A simple command line app to watch files in a directory for changes and run a command when files change!

Watcher - Develop your programs easily Watcher watches all the files present in the directory it is run from of the directory that is specified while

Mar 27, 2022