git-diff-scripton commit Introduce "reset type" flag to "git reset" (45d197a)
   1#!/bin/sh
   2rev=($(git-rev-parse --revs-only "$@")) || exit
   3flags=($(git-rev-parse --no-revs --flags "$@"))
   4files=($(git-rev-parse --no-revs --no-flags "$@"))
   5case "${#rev[*]}" in
   60)
   7        git-diff-files -M -p "$@";;
   81)
   9        git-diff-cache -M -p "$@";;
  102)
  11        case "${rev[1]}" in
  12        ^?*)
  13                begin=$(echo "${rev[1]}" | tr -d '^')
  14                end="${rev[0]}" ;;
  15        *)
  16                begin="${rev[0]}"
  17                end="${rev[1]}" ;;
  18        esac
  19        git-diff-tree -M -p $flags $begin $end $files;;
  20*)
  21        echo "I don't understand"
  22        exit 1;;
  23esac