mirror of
https://github.com/tj/git-extras.git
synced 2026-09-11 07:56:18 -04:00
Merge pull request #404 from nicolaiskogheim/freebsd-fix
Make git effort run on FreeBSD
This commit is contained in:
commit
46db56905d
|
|
@ -35,7 +35,7 @@ show_cursor_and_cleanup() {
|
|||
#
|
||||
|
||||
active_days() {
|
||||
uniq <(echo "$1") | wc -l
|
||||
uniq <<<$(echo "$1") | wc -l
|
||||
}
|
||||
|
||||
#
|
||||
|
|
@ -119,33 +119,37 @@ above_index=0
|
|||
has_above=false
|
||||
next_is_above=false
|
||||
num_files=0
|
||||
for i in `seq ${#@}`
|
||||
do
|
||||
cur="${!i}"
|
||||
|
||||
if "$next_is_above" ; then
|
||||
above="$cur"
|
||||
next_is_above=false
|
||||
continue
|
||||
fi
|
||||
# Some implementations of `seq` gives "1\n0" for seq 0
|
||||
if [ $# -gt 0 ] ; then
|
||||
for i in `seq ${#@}`
|
||||
do
|
||||
cur="${!i}"
|
||||
|
||||
case "$cur" in
|
||||
--above)
|
||||
if "$has_above" ; then
|
||||
echo "error: --above can only be specified one time" 1>&2
|
||||
exit 1
|
||||
fi
|
||||
next_is_above=true
|
||||
has_above=true
|
||||
above_index=$(( i - 1 ))
|
||||
;;
|
||||
--*)
|
||||
;;
|
||||
*)
|
||||
num_files=$(( num_files + 1 ))
|
||||
;;
|
||||
esac
|
||||
done
|
||||
if "$next_is_above" ; then
|
||||
above="$cur"
|
||||
next_is_above=false
|
||||
continue
|
||||
fi
|
||||
|
||||
case "$cur" in
|
||||
--above)
|
||||
if "$has_above" ; then
|
||||
echo "error: --above can only be specified one time" 1>&2
|
||||
exit 1
|
||||
fi
|
||||
next_is_above=true
|
||||
has_above=true
|
||||
above_index=$(( i - 1 ))
|
||||
;;
|
||||
--*)
|
||||
;;
|
||||
*)
|
||||
num_files=$(( num_files + 1 ))
|
||||
;;
|
||||
esac
|
||||
done
|
||||
fi
|
||||
|
||||
# Exit if above-value is not an int
|
||||
if [ -z "${above##*[!0-9]*}" ] ; then
|
||||
|
|
@ -193,9 +197,18 @@ export -f dates
|
|||
export above
|
||||
export log_args
|
||||
|
||||
|
||||
bash_params=
|
||||
# If bash exits sucessfully with --import-functions,
|
||||
# then we need to pass it (FreeBSD probably)
|
||||
bash --import-functions -c ":" 1>/dev/null 2>&1
|
||||
if [ $? -eq 0 ] ; then
|
||||
bash_params="--import-functions"
|
||||
fi
|
||||
|
||||
heading
|
||||
# send files to effort
|
||||
printf "%s\0" "${files[@]}" | xargs -0 -n 1 -P 4 -I % bash -c "effort \"%\"" | tee $tmp
|
||||
printf "%s\0" "${files[@]}" | xargs -0 -n 1 -P 4 -I % bash $bash_params -c "effort \"%\"" | tee $tmp
|
||||
|
||||
# if more than one file, sort and print
|
||||
test "$(wc -l $tmp | awk '{print $1}')" -gt 1 && sort_effort
|
||||
|
|
|
|||
Loading…
Reference in a new issue