src_path="$remote_path"
dst_rune="sh -c"
dst_path=.
- msg="git-branchmove: moved to $remote ($remoteurl)" ;;
+ updatemsg="git-branchmove: moved to $remote ($remoteurl)"
push_fetch=fetch
;;
put)
dst_path="$remote_path"
src_rune="sh -c"
src_path=.
- msg="git-branchmove; moved to `hostname -f` by `whoami`" ;;
+ updatemsg="git-branchmove; moved to `hostname -f` by `whoami`"
push_fetch=push
;;
esac
;;
esac
+
+if [ "${#src_branches[@]}" = 0 ]; then
+ echo >&2 "git-branchmove: nothing to do"
+ exit 1
+fi
+
dst_branches=( $(on_dst "$get_branches_rune") )
: "${dst_branches[@]}"
#----- delete the refs on the source -----
(
- printf "%s\n" "$message"
+ printf "%s\n" "$updatemsg"
for src_rm in "${src_branches[@]}"; do printf "%s\n" "$src_rm"; done
) | on_src '
- read message
+ read updatemsg
while read src_rm; do
src_ref="${src_rm%=*}"
src_obj="${src_rm##*=}"
- git update-ref -m "$message" -d "$src_ref" "$src_obj"
+ git update-ref -m "$updatemsg" -d "$src_ref" "$src_obj"
echo "move complete: $src_ref"
done
'
-echo 'moved ${#src_branches[@]} branches.'
+echo "moved ${#src_branches[@]} branches."