/github-macros

Tools for working with GitHub repositories en-masse

Primary LanguagePython

GitHub Macros

A toolchain for interacting with GitHub via the command line. Contrary to what other tools might do (cough cough hub), this does not proxy all of your git commands. It is intended to be entirely separate from git itself, only using it as an automation tool when necessary.

Commands

  • gh-refresh -- Mirror GitHub repositories
  • gh-protect -- Check branch protection of repositories
  • gh-permit -- Grant collaborator access for repositories
  • gh-releases -- List asset download URLs of a repository's release

Installation

It is highly recommended that you install pipsi for any Python command line application. It sandboxes the command's dependencies and, in case you have a Python version switcher such as pyenv, links to a specific version of Python regardless of what you're currently using.

$ pipsi install github-macros

If you receive an error on this, perhaps the package was already installed

$ pipsi upgrade github-macros

GitHub Token

To use these tools, we make use of the GitHub APIs, which are only (reliably) accessible with a Personal Access Token. The scopes granted to this token are listed with each command's documentation.

Compatibility

This toolset was designed for use with github.com, or with GitHub Enterprise 2.10 or above by setting the environment variable GITHUB_DOMAIN.

Uninstallation

In case there's ever any issue where you want to completely remove this application, here's how you do it:

$ pipsi uninstall github_macros

The final step--and this is super important--is to weep gently into your arms for the lost productivity.