Skip to content

g4s8/gitstrap

Repository files navigation

Gitstrap

CI Hits-of-Code codebeat badge

GitHub release

Manage your GitHub repositories as a set of resouce configuration files!

Gitstrap automates routine operations with Github. It can create and configure Github repositories, teams, readmes, organizations, etc from yaml specification files. It helps to:

  • Create new repository on Github;
  • Manage repositories permissions;
  • Keep all organization repositories configuration in yaml files in one directory;
  • Configure webhooks for Github repo 5) configure branch protection rules;
  • Other repo management tasks;

See Wiki for full documentation.

Demo

asciicast

Quickstart

  1. Download gitstrap CLI (see Install section)
  2. Get configuration from any of your repositories or from this one: gitstrap get --owner=g4s8 gitstrap > repo.yaml
  3. Edit YAML config (see Specification reference)
  4. Create or update you repository with gitstrap apply -f repo.yaml

Install

First you need to install it.

To get binary for your platform use download script:

curl -L https://raw.githubusercontent.com/g4s8/gitstrap/master/scripts/download.sh | sh

On MacOS you can install it using brew tool:

brew tap g4s8/.tap https://github.com/g4s8/.tap
brew install g4s8/.tap/gitstrap

Alternatively, you can build it using go get github.com/g4s8/gitstrap

Get GitHub token

To use gitstrap you need GitHub token. Go to settings (profile settings, developer settings, personal access token, generate new token): https://github.com/settings/tokens/new and select all repo checkboxes and delete_repo checkbox (in case you want gitstrap to be able to delete repositories). You may use this token as CLI option (gitstrap --token=ABCD123 apply) or save it in ~/.config/gitstrap/github_token.txt file.

Contributing

See CONTRIBUTING.md for details.