permettre de spécifier -l et -d ensemble

This commit is contained in:
Jephte CLAIN 2015-03-05 20:44:47 +04:00
parent 396f434189
commit d5d5225ea9
1 changed files with 19 additions and 15 deletions

34
pdev
View File

@ -34,8 +34,9 @@ OPTIONS
-l, --log
-d, --diff
Afficher les modifications entre deux branches. L'option --log affiche
les modifications dans l'ordre alors que --diff affiche toutes les
différences sous forme de diff.
les modifications dans l'ordre alors que --diff affiche les différences
sous forme de diff. Les deux options peuvent être combinées et ont
l'effet de 'git log -p'
La branche comparée, s'il elle n'est pas spécifiée, est par défaut la
branche courante. S'il s'agit d'une feature branch, elle est comparée à
develop. S'il s'agit de la branche develop, elle est comparée à master."
@ -44,13 +45,15 @@ OPTIONS
projdir=
origin=origin
action=branch
log=
diff=
parse_opts "${PRETTYOPTS[@]}" \
--help '$exit_with display_help' \
-C:,--projdir: projdir= \
-O:,--origin: origin= \
-m,--merge action=merge \
-l,--log action=log \
-d,--diff action=diff \
-l,--log '$action=diff; log=1' \
-d,--diff '$action=diff; diff=1' \
@ args -- "$@" && set -- "${args[@]}" || die "$args"
if [ -n "$projdir" ]; then
@ -151,17 +154,18 @@ dans la branche de destination ${COULEUR_BLEUE}develop${COULEUR_NORMALE}"
git push origin ":$feature"
fi
elif [ "$action" == log ]; then
if [ -n "$feature" ]; then
git log develop.."$feature"
else
git log master..develop
fi
elif [ "$action" == diff ]; then
if [ -n "$feature" ]; then
git diff develop.."$feature"
else
git diff master..develop
if [ -n "$log" ]; then
if [ -n "$feature" ]; then
git log ${diff:+-p} develop.."$feature"
else
git log ${diff:+-p} master..develop
fi
elif [ -n "$diff" ]; then
if [ -n "$feature" ]; then
git diff develop.."$feature"
else
git diff master..develop
fi
fi
fi