File: git-delete-branch

package info (click to toggle)
git-extras 7.4.0-1
  • links: PTS
  • area: main
  • in suites: forky, sid
  • size: 2,120 kB
  • sloc: sh: 4,312; python: 994; makefile: 146
file content (17 lines) | stat: -rwxr-xr-x 475 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#!/usr/bin/env bash
set -e

# Assert there is at least one branch provided
test -z "$1" && echo "branch required." 1>&2 && exit 1

for branch in "$@"
do
  remote=$(git config "branch.$branch.remote" || echo "origin")
  ref=$(git config "branch.$branch.merge" || echo "refs/heads/$branch")

  git branch -D "$branch" || true
  # Avoid deleting local upstream
  [ "$remote" = "." ] && continue
  git branch -d -r "$remote/$branch" || continue
  git push "$remote" ":$ref"
done