clean-github-branches

command module
v0.1.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 7, 2018 License: Apache-2.0 Imports: 14 Imported by: 0

README

Go Report Card

Luzifer / clean-github-branches

This tool is intended to clean up branches in repositories having many contributors with several pull-requests: Most of the time people tend to forget to delete the branch after merging the pull-request and branches pile up. Running clean-github-branches against the repo will find

  • branches whose corresponding pull-requests are merged and delete them
  • branches not being ahead of the base branch and delete them after a configurable duration
  • branches being stale and optionally delete them after a configurable duration

Usage

$ clean-github-branches --help
Usage of clean-github-branches:
      --branch-staleness duration   When to see a branch as stale (default 90d) (default 2160h0m0s)
      --delete-stale                Delete branches after branch-staleness even if ahead of base
  -n, --dry-run                     Do a dry-run (take no destructive action) (default true)
      --even-timeout duration       When to delete a branch which is not ahead of base (default 24h0m0s)
      --listen string               Port/IP to listen on (default ":3000")
      --log-level string            Log level (debug, info, warn, error, fatal) (default "info")
      --process-limit int           How many repos to process concurrently (default 10)
  -r, --repo-regex string           Regular expression the full repo (user/reponame) must match against
      --token string                Token to access Github API
      --version                     Prints current version and exits

$ clean-github-branches -r '^[lL]uzifer(-docker|-ansible|)/'
WARN[0012] Stale branch found                            age=2y174d23h ahead=1 behind=1 branch=develop dry-run=true repo=luzifer-docker/etherpad-lite
INFO[0012] Done.

All parameters causing destructive actions are set to sane defaults: By default a dry-run is done which prevents any deletion. Also delete-stale is disabled as it might cause data loss as the branch is not merged and all commits in it will be lost.

Documentation

The Go Gopher

There is no documentation for this package.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL