diff options
author | Linus Torvalds <torvalds@ppc970.osdl.org> | 2005-06-13 15:09:34 -0700 |
---|---|---|
committer | Linus Torvalds <torvalds@ppc970.osdl.org> | 2005-06-13 15:09:34 -0700 |
commit | 940c1bb0181cb20454bf3573134175f86983a0ce (patch) | |
tree | 5aa582bf5d5dcca3c7c93b87fb6963c004a240b1 | |
parent | Teach git-rev-parse about revision-specifying arguments (diff) | |
download | tgif-940c1bb0181cb20454bf3573134175f86983a0ce.tar.xz |
Add "git diff" script
It's a simple helper that depending on the arguments will either
use git-diff-files, git-diff-cache or git-diff-tree.
-rw-r--r-- | Makefile | 2 | ||||
-rwxr-xr-x | git-diff-script | 16 |
2 files changed, 17 insertions, 1 deletions
@@ -23,7 +23,7 @@ INSTALL=install SCRIPTS=git git-apply-patch-script git-merge-one-file-script git-prune-script \ git-pull-script git-tag-script git-resolve-script git-whatchanged \ git-deltafy-script git-fetch-script git-status-script git-commit-script \ - git-log-script git-shortlog git-cvsimport-script + git-log-script git-shortlog git-cvsimport-script git-diff-script PROG= git-update-cache git-diff-files git-init-db git-write-tree \ git-read-tree git-commit-tree git-cat-file git-fsck-cache \ diff --git a/git-diff-script b/git-diff-script new file mode 100755 index 0000000000..d70e8b9f29 --- /dev/null +++ b/git-diff-script @@ -0,0 +1,16 @@ +#!/bin/sh +rev=($(git-rev-parse --revs-only "$@")) +flags=($(git-rev-parse --no-revs "$@")) +case "${#rev[*]}" in +0) + git-diff-files -p "$@";; +1) + git-diff-cache -p "$@";; +2) + begin=$(echo "${rev[1]}" | tr -d '^') + end="${rev[0]}" + git-diff-tree -p $flags $begin $end;; +*) + echo "I don't understand" + exit 1;; +esac |