Introduce range-diff
to compare iterations of a topic branch
This command does not do a whole lot so far, apart from showing a usage
that is oddly similar to that of `git tbdiff`. And for a good reason:
the next commits will turn `range-branch` into a full-blown replacement
for `tbdiff`.
At this point, we ignore tbdiff's color options, as they will all be
implemented later using diff_options.
Since f318d73915
(generate-cmds.sh: export all commands to
command-list.h, 2018-05-10), every new command *requires* a man page to
build right away, so let's also add a blank man page, too.
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
22d87333e5
commit
348ae56cb2
1
.gitignore
vendored
1
.gitignore
vendored
@ -113,6 +113,7 @@
|
|||||||
/git-pull
|
/git-pull
|
||||||
/git-push
|
/git-push
|
||||||
/git-quiltimport
|
/git-quiltimport
|
||||||
|
/git-range-diff
|
||||||
/git-read-tree
|
/git-read-tree
|
||||||
/git-rebase
|
/git-rebase
|
||||||
/git-rebase--am
|
/git-rebase--am
|
||||||
|
10
Documentation/git-range-diff.txt
Normal file
10
Documentation/git-range-diff.txt
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
git-range-diff(1)
|
||||||
|
=================
|
||||||
|
|
||||||
|
NAME
|
||||||
|
----
|
||||||
|
git-range-diff - Compare two commit ranges (e.g. two versions of a branch)
|
||||||
|
|
||||||
|
GIT
|
||||||
|
---
|
||||||
|
Part of the linkgit:git[1] suite
|
1
Makefile
1
Makefile
@ -1063,6 +1063,7 @@ BUILTIN_OBJS += builtin/prune-packed.o
|
|||||||
BUILTIN_OBJS += builtin/prune.o
|
BUILTIN_OBJS += builtin/prune.o
|
||||||
BUILTIN_OBJS += builtin/pull.o
|
BUILTIN_OBJS += builtin/pull.o
|
||||||
BUILTIN_OBJS += builtin/push.o
|
BUILTIN_OBJS += builtin/push.o
|
||||||
|
BUILTIN_OBJS += builtin/range-diff.o
|
||||||
BUILTIN_OBJS += builtin/read-tree.o
|
BUILTIN_OBJS += builtin/read-tree.o
|
||||||
BUILTIN_OBJS += builtin/rebase--helper.o
|
BUILTIN_OBJS += builtin/rebase--helper.o
|
||||||
BUILTIN_OBJS += builtin/receive-pack.o
|
BUILTIN_OBJS += builtin/receive-pack.o
|
||||||
|
@ -201,6 +201,7 @@ extern int cmd_prune(int argc, const char **argv, const char *prefix);
|
|||||||
extern int cmd_prune_packed(int argc, const char **argv, const char *prefix);
|
extern int cmd_prune_packed(int argc, const char **argv, const char *prefix);
|
||||||
extern int cmd_pull(int argc, const char **argv, const char *prefix);
|
extern int cmd_pull(int argc, const char **argv, const char *prefix);
|
||||||
extern int cmd_push(int argc, const char **argv, const char *prefix);
|
extern int cmd_push(int argc, const char **argv, const char *prefix);
|
||||||
|
extern int cmd_range_diff(int argc, const char **argv, const char *prefix);
|
||||||
extern int cmd_read_tree(int argc, const char **argv, const char *prefix);
|
extern int cmd_read_tree(int argc, const char **argv, const char *prefix);
|
||||||
extern int cmd_rebase__helper(int argc, const char **argv, const char *prefix);
|
extern int cmd_rebase__helper(int argc, const char **argv, const char *prefix);
|
||||||
extern int cmd_receive_pack(int argc, const char **argv, const char *prefix);
|
extern int cmd_receive_pack(int argc, const char **argv, const char *prefix);
|
||||||
|
25
builtin/range-diff.c
Normal file
25
builtin/range-diff.c
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
#include "cache.h"
|
||||||
|
#include "builtin.h"
|
||||||
|
#include "parse-options.h"
|
||||||
|
|
||||||
|
static const char * const builtin_range_diff_usage[] = {
|
||||||
|
N_("git range-diff [<options>] <old-base>..<old-tip> <new-base>..<new-tip>"),
|
||||||
|
N_("git range-diff [<options>] <old-tip>...<new-tip>"),
|
||||||
|
N_("git range-diff [<options>] <base> <old-tip> <new-tip>"),
|
||||||
|
NULL
|
||||||
|
};
|
||||||
|
|
||||||
|
int cmd_range_diff(int argc, const char **argv, const char *prefix)
|
||||||
|
{
|
||||||
|
int creation_factor = 60;
|
||||||
|
struct option options[] = {
|
||||||
|
OPT_INTEGER(0, "creation-factor", &creation_factor,
|
||||||
|
N_("Percentage by which creation is weighted")),
|
||||||
|
OPT_END()
|
||||||
|
};
|
||||||
|
|
||||||
|
argc = parse_options(argc, argv, NULL, options,
|
||||||
|
builtin_range_diff_usage, 0);
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
@ -139,6 +139,7 @@ git-prune-packed plumbingmanipulators
|
|||||||
git-pull mainporcelain remote
|
git-pull mainporcelain remote
|
||||||
git-push mainporcelain remote
|
git-push mainporcelain remote
|
||||||
git-quiltimport foreignscminterface
|
git-quiltimport foreignscminterface
|
||||||
|
git-range-diff mainporcelain
|
||||||
git-read-tree plumbingmanipulators
|
git-read-tree plumbingmanipulators
|
||||||
git-rebase mainporcelain history
|
git-rebase mainporcelain history
|
||||||
git-receive-pack synchelpers
|
git-receive-pack synchelpers
|
||||||
|
1
git.c
1
git.c
@ -520,6 +520,7 @@ static struct cmd_struct commands[] = {
|
|||||||
{ "prune-packed", cmd_prune_packed, RUN_SETUP },
|
{ "prune-packed", cmd_prune_packed, RUN_SETUP },
|
||||||
{ "pull", cmd_pull, RUN_SETUP | NEED_WORK_TREE },
|
{ "pull", cmd_pull, RUN_SETUP | NEED_WORK_TREE },
|
||||||
{ "push", cmd_push, RUN_SETUP },
|
{ "push", cmd_push, RUN_SETUP },
|
||||||
|
{ "range-diff", cmd_range_diff, RUN_SETUP | USE_PAGER },
|
||||||
{ "read-tree", cmd_read_tree, RUN_SETUP | SUPPORT_SUPER_PREFIX},
|
{ "read-tree", cmd_read_tree, RUN_SETUP | SUPPORT_SUPER_PREFIX},
|
||||||
{ "rebase--helper", cmd_rebase__helper, RUN_SETUP | NEED_WORK_TREE },
|
{ "rebase--helper", cmd_rebase__helper, RUN_SETUP | NEED_WORK_TREE },
|
||||||
{ "receive-pack", cmd_receive_pack },
|
{ "receive-pack", cmd_receive_pack },
|
||||||
|
Loading…
Reference in New Issue
Block a user