https://github.com/g4s8/gitstrap
CLI for managing GitHub resources
https://github.com/g4s8/gitstrap
cli git github webhooks
Last synced: 3 months ago
JSON representation
CLI for managing GitHub resources
- Host: GitHub
- URL: https://github.com/g4s8/gitstrap
- Owner: g4s8
- License: mit
- Created: 2019-01-04T11:21:48.000Z (about 7 years ago)
- Default Branch: master
- Last Pushed: 2025-03-06T09:31:36.000Z (11 months ago)
- Last Synced: 2025-03-31T11:03:03.959Z (10 months ago)
- Topics: cli, git, github, webhooks
- Language: Go
- Size: 355 KB
- Stars: 70
- Watchers: 6
- Forks: 15
- Open Issues: 8
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- Funding: .github/FUNDING.yml
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
# Gitstrap
[](https://github.com/g4s8/gitstrap/actions/workflows/go.yml)
[](https://hitsofcode.com/view/github/g4s8/gitstrap)
[](https://codebeat.co/projects/github-com-g4s8-gitstrap-master)
[](https://github.com/g4s8/gitstrap/releases/latest)
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](https://github.com/g4s8/gitstrap/wiki/Specifications).
# Demo
[](https://asciinema.org/a/504401)
# Quickstart
1. Download `gitstrap` CLI (see [Install](#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](https://github.com/g4s8/gitstrap/wiki/Specifications) 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](https://github.com/g4s8/gitstrap/blob/master/scripts/download.sh):
```sh
curl -L https://raw.githubusercontent.com/g4s8/gitstrap/master/scripts/download.sh | sh
```
On MacOS you can install it using `brew` tool:
```sh
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](https://github.com/g4s8/gitstrap/blob/master/CONTRIBUTING.md) for details.