Tente isso. $1
deve ser o diretório pai contendo todos os seus repositórios (ou use "." para o diretório atual):
#!/bin/bash
function git_branches()
{
if [[ -z "$1" ]]; then
echo "Usage: $FUNCNAME <dir>" >&2
return 1
fi
if [[ ! -d "$1" ]]; then
echo "Invalid dir specified: '${1}'"
return 1
fi
# Subshell so we don't end up in a different dir than where we started.
(
cd "$1"
for sub in *; do
[[ -d "${sub}/.git" ]] || continue
echo "$sub [$(cd "$sub"; git branch | grep '^\*' | cut -d' ' -f2)]"
done
)
}
Você pode criar um script próprio (mas substitua $FUNCNAME
por $0
) ou mantenha-o dentro de uma função e use-o em seus scripts.