diff options
Diffstat (limited to 'builtin-diff-files.c')
-rw-r--r-- | builtin-diff-files.c | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/builtin-diff-files.c b/builtin-diff-files.c new file mode 100644 index 0000000000..6cb30c8e12 --- /dev/null +++ b/builtin-diff-files.c @@ -0,0 +1,35 @@ +/* + * GIT - The information manager from hell + * + * Copyright (C) Linus Torvalds, 2005 + */ +#include "cache.h" +#include "diff.h" +#include "commit.h" +#include "revision.h" +#include "builtin.h" + +static const char diff_files_usage[] = +"git-diff-files [-q] [-0/-1/2/3 |-c|--cc|--no-index] [<common diff options>] [<path>...]" +COMMON_DIFF_OPTIONS_HELP; + +int cmd_diff_files(int argc, const char **argv, const char *prefix) +{ + struct rev_info rev; + int nongit = 0; + int result; + + prefix = setup_git_directory_gently(&nongit); + init_revisions(&rev, prefix); + git_config(git_default_config); /* no "diff" UI options */ + rev.abbrev = 0; + + if (!setup_diff_no_index(&rev, argc, argv, nongit, prefix)) + argc = 0; + else + argc = setup_revisions(argc, argv, &rev, NULL); + if (!rev.diffopt.output_format) + rev.diffopt.output_format = DIFF_FORMAT_RAW; + result = run_diff_files_cmd(&rev, argc, argv); + return rev.diffopt.exit_with_status ? rev.diffopt.has_changes: result; +} |