diff options
author | Junio C Hamano <gitster@pobox.com> | 2017-06-02 15:06:05 +0900 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2017-06-02 15:06:05 +0900 |
commit | 7ef0d047386a1932dc4a8b1008d851b0fe47f978 (patch) | |
tree | 164f1bd89b45be7337b44b0252a09bf7d4deffb5 /builtin/cat-file.c | |
parent | f4fd99bf6e5c27265ee2a9ccb9c2495854f67acb (diff) | |
parent | 30d005c02014680403b5d35ef274047ab91fa5bd (diff) | |
download | git-7ef0d047386a1932dc4a8b1008d851b0fe47f978.tar.gz git-7ef0d047386a1932dc4a8b1008d851b0fe47f978.tar.xz |
Merge branch 'jk/diff-blob'
The result from "git diff" that compares two blobs, e.g. "git diff
$commit1:$path $commit2:$path", used to be shown with the full
object name as given on the command line, but it is more natural to
use the $path in the output and use it to look up .gitattributes.
* jk/diff-blob:
diff: use blob path for blob/file diffs
diff: use pending "path" if it is available
diff: use the word "path" instead of "name" for blobs
diff: pass whole pending entry in blobinfo
handle_revision_arg: record paths for pending objects
handle_revision_arg: record modes for "a..b" endpoints
t4063: add tests of direct blob diffs
get_sha1_with_context: dynamically allocate oc->path
get_sha1_with_context: always initialize oc->symlink_path
sha1_name: consistently refer to object_context as "oc"
handle_revision_arg: add handle_dotdot() helper
handle_revision_arg: hoist ".." check out of range parsing
handle_revision_arg: stop using "dotdot" as a generic pointer
handle_revision_arg: simplify commit reference lookups
handle_revision_arg: reset "dotdot" consistently
Diffstat (limited to 'builtin/cat-file.c')
-rw-r--r-- | builtin/cat-file.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/builtin/cat-file.c b/builtin/cat-file.c index 9af863e79..73c81f0cb 100644 --- a/builtin/cat-file.c +++ b/builtin/cat-file.c @@ -61,7 +61,8 @@ static int cat_one_file(int opt, const char *exp_type, const char *obj_name, if (unknown_type) flags |= LOOKUP_UNKNOWN_OBJECT; - if (get_sha1_with_context(obj_name, 0, oid.hash, &obj_context)) + if (get_sha1_with_context(obj_name, GET_SHA1_RECORD_PATH, + oid.hash, &obj_context)) die("Not a valid object name %s", obj_name); if (!path) @@ -166,6 +167,7 @@ static int cat_one_file(int opt, const char *exp_type, const char *obj_name, write_or_die(1, buf, size); free(buf); + free(obj_context.path); return 0; } |