12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758 |
- #!/bin/sh
- if [ $# -ne 1 ]; then
- echo >&2 "Usage: $0 PATH"
- echo >&2 "Show the primary and secondary maintainers for a given path"
- exit 1
- fi
- set -e
- DEST=$1
- DESTFILE=""
- if [ ! -d $DEST ]; then
- DESTFILE=$(basename $DEST)
- DEST=$(dirname $DEST)
- fi
- MAINTAINERS=()
- cd $DEST
- while true; do
- if [ -e ./MAINTAINERS ]; then
- {
- while read line; do
- re='^([^:]*): *(.*)$'
- file=$(echo $line | sed -E -n "s/$re/\1/p")
- if [ ! -z "$file" ]; then
- if [ "$file" = "$DESTFILE" ]; then
- echo "Override: $line"
- maintainer=$(echo $line | sed -E -n "s/$re/\2/p")
- MAINTAINERS=("$maintainer" "${MAINTAINERS[@]}")
- fi
- else
- MAINTAINERS+=("$line");
- fi
- done;
- } < MAINTAINERS
- fi
- if [ -d .git ]; then
- break
- fi
- if [ "$(pwd)" = "/" ]; then
- break
- fi
- cd ..
- done
- PRIMARY="${MAINTAINERS[0]}"
- PRIMARY_FIRSTNAME=$(echo $PRIMARY | cut -d' ' -f1)
- firstname() {
- echo $1 | cut -d' ' -f1
- }
- echo "--- $PRIMARY is the PRIMARY MAINTAINER of $1. Assign pull requests to him."
- echo "$(firstname $PRIMARY) may assign pull requests to the following secondary maintainers:"
- for SECONDARY in "${MAINTAINERS[@]:1}"; do
- echo "--- $SECONDARY"
- done
|