summaryrefslogtreecommitdiff
path: root/diff.h
diff options
context:
space:
mode:
authorJunio C Hamano <junkio@cox.net>2005-12-13 17:21:41 -0800
committerJunio C Hamano <junkio@cox.net>2005-12-19 18:32:44 -0800
commit47dd0d595d04ee5283dfd8a0b4cbd6e6de8ad57f (patch)
tree49a5c32f9fbcd84e328e6b285d8d1393271563e8 /diff.h
parent1c15afb9343bca82e687d008ec983a9110ac9c40 (diff)
downloadgit-47dd0d595d04ee5283dfd8a0b4cbd6e6de8ad57f.tar.gz
diff: --abbrev option
When I show transcripts to explain how something works, I often find myself hand-editing the diff-raw output to shorten various object names in the output. This adds --abbrev option to the diff family, which shortens diff-raw output and diff-tree commit id headers. Signed-off-by: Junio C Hamano <junkio@cox.net>
Diffstat (limited to 'diff.h')
-rw-r--r--diff.h9
1 files changed, 8 insertions, 1 deletions
diff --git a/diff.h b/diff.h
index 32b4780173..c3486ffa86 100644
--- a/diff.h
+++ b/diff.h
@@ -44,6 +44,7 @@ struct diff_options {
int reverse_diff;
int rename_limit;
int setup;
+ int abbrev;
change_fn_t change;
add_remove_fn_t add_remove;
@@ -87,6 +88,9 @@ extern int diff_setup_done(struct diff_options *);
#define DIFF_PICKAXE_ALL 1
+#define DIFF_DEFAULT_INDEX_ABBREV 7 /* hex digits */
+#define DIFF_DEFAULT_ABBREV 7 /* hex digits */
+
extern void diffcore_std(struct diff_options *);
extern void diffcore_std_no_resolve(struct diff_options *);
@@ -98,7 +102,8 @@ extern void diffcore_std_no_resolve(struct diff_options *);
" -u synonym for -p.\n" \
" --name-only show only names of changed files.\n" \
" --name-status show names and status of changed files.\n" \
-" --full-index show full object name on index ines.\n" \
+" --full-index show full object name on index lines.\n" \
+" --abbrev abbreviate object names in diff-tree header and diff-raw.\n" \
" -R swap input file pairs.\n" \
" -B detect complete rewrites.\n" \
" -M detect renames.\n" \
@@ -137,4 +142,6 @@ extern void diff_flush(struct diff_options*);
#define DIFF_STATUS_FILTER_AON '*'
#define DIFF_STATUS_FILTER_BROKEN 'B'
+extern const char *diff_unique_abbrev(const unsigned char *, int);
+
#endif /* DIFF_H */