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: 1) create new repository on Github 2) manage repositories permissions
3) keep all organization repositories configuration in yaml files in one directory
4) configure webhooks for Github repo 5) configure branch protection rules
6) many others
See Wiki for full documentation.
- Download
gitstrap
CLI (see Install section) - Get configuration from any of your repositories or from this one:
gitstrap get --owner=g4s8 gitstrap > repo.yaml
- Edit YAML config (see Specification reference)
- Create or update you repository with
gitstrap apply -f repo.yaml
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
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.
See CONTRIBUTING.md for details.