1
0
mirror of https://github.com/git/git.git synced 2024-11-15 15:03:47 +01:00
git/git-diff-script
Linus Torvalds d1918a7285 Make "git diff" use git-sh-setup-script too..
Give a sane error rather than just silently claiming no diffs when
you're not at the top-level directory.
2005-07-14 09:29:35 -07:00

20 lines
437 B
Bash
Executable File

#!/bin/sh
. git-sh-setup-script || die "Not a git archive"
rev=($(git-rev-parse --revs-only "$@"))
flags=($(git-rev-parse --no-revs --flags "$@"))
files=($(git-rev-parse --no-revs --no-flags "$@"))
case "${#rev[*]}" in
0)
git-diff-files -M -p "$@";;
1)
git-diff-cache -M -p "$@";;
2)
begin=$(echo "${rev[1]}" | tr -d '^')
end="${rev[0]}"
git-diff-tree -M -p $flags $begin $end $files;;
*)
echo "I don't understand"
exit 1;;
esac