blob: 03ed555e777b6dfeac8811338986eb752418ab72 [file] [log] [blame]
Linus Torvalds940c1bb2005-06-13 15:09:34 -07001#!/bin/sh
Linus Torvaldsd1918a72005-07-14 09:29:35 -07002. git-sh-setup-script || die "Not a git archive"
3
Linus Torvalds940c1bb2005-06-13 15:09:34 -07004rev=($(git-rev-parse --revs-only "$@"))
Linus Torvalds9e9824b2005-07-06 10:09:58 -07005flags=($(git-rev-parse --no-revs --flags "$@"))
6files=($(git-rev-parse --no-revs --no-flags "$@"))
Linus Torvalds940c1bb2005-06-13 15:09:34 -07007case "${#rev[*]}" in
80)
Linus Torvalds753fd782005-06-17 15:34:19 -07009 git-diff-files -M -p "$@";;
Linus Torvalds940c1bb2005-06-13 15:09:34 -0700101)
Linus Torvalds753fd782005-06-17 15:34:19 -070011 git-diff-cache -M -p "$@";;
Linus Torvalds940c1bb2005-06-13 15:09:34 -0700122)
13 begin=$(echo "${rev[1]}" | tr -d '^')
14 end="${rev[0]}"
Linus Torvalds9e9824b2005-07-06 10:09:58 -070015 git-diff-tree -M -p $flags $begin $end $files;;
Linus Torvalds940c1bb2005-06-13 15:09:34 -070016*)
17 echo "I don't understand"
18 exit 1;;
19esac