зеркало из https://github.com/microsoft/git.git
Merge branch 'jc/no-cmd-as-subroutine'
Calling cmd_foo() as if it is a general purpose helper function is a no-no. Correct two instances of such to set an example. * jc/no-cmd-as-subroutine: merge-ours: do not use cmd_*() as a subroutine describe: do not use cmd_*() as a subroutine
This commit is contained in:
Коммит
22ddc4bf29
|
@ -7,12 +7,12 @@
|
|||
#include "builtin.h"
|
||||
#include "exec_cmd.h"
|
||||
#include "parse-options.h"
|
||||
#include "revision.h"
|
||||
#include "diff.h"
|
||||
#include "hashmap.h"
|
||||
#include "argv-array.h"
|
||||
#include "run-command.h"
|
||||
|
||||
#define SEEN (1u << 0)
|
||||
#define MAX_TAGS (FLAG_BITS - 1)
|
||||
|
||||
static const char * const describe_usage[] = {
|
||||
|
@ -543,7 +543,9 @@ int cmd_describe(int argc, const char **argv, const char *prefix)
|
|||
}
|
||||
} else if (dirty) {
|
||||
static struct lock_file index_lock;
|
||||
int fd;
|
||||
struct rev_info revs;
|
||||
struct argv_array args = ARGV_ARRAY_INIT;
|
||||
int fd, result;
|
||||
|
||||
read_cache_preload(NULL);
|
||||
refresh_index(&the_index, REFRESH_QUIET|REFRESH_UNMERGED,
|
||||
|
@ -552,8 +554,13 @@ int cmd_describe(int argc, const char **argv, const char *prefix)
|
|||
if (0 <= fd)
|
||||
update_index_if_able(&the_index, &index_lock);
|
||||
|
||||
if (!cmd_diff_index(ARRAY_SIZE(diff_index_args) - 1,
|
||||
diff_index_args, prefix))
|
||||
init_revisions(&revs, prefix);
|
||||
argv_array_pushv(&args, diff_index_args);
|
||||
if (setup_revisions(args.argc, args.argv, &revs, NULL) != 1)
|
||||
BUG("malformed internal diff-index command line");
|
||||
result = run_diff_index(&revs, 0);
|
||||
|
||||
if (!diff_result_code(&revs.diffopt, result))
|
||||
suffix = NULL;
|
||||
else
|
||||
suffix = dirty;
|
||||
|
|
|
@ -9,26 +9,24 @@
|
|||
*/
|
||||
#include "git-compat-util.h"
|
||||
#include "builtin.h"
|
||||
#include "diff.h"
|
||||
|
||||
static const char builtin_merge_ours_usage[] =
|
||||
"git merge-ours <base>... -- HEAD <remote>...";
|
||||
|
||||
static const char *diff_index_args[] = {
|
||||
"diff-index", "--quiet", "--cached", "HEAD", "--", NULL
|
||||
};
|
||||
#define NARGS (ARRAY_SIZE(diff_index_args) - 1)
|
||||
|
||||
int cmd_merge_ours(int argc, const char **argv, const char *prefix)
|
||||
{
|
||||
if (argc == 2 && !strcmp(argv[1], "-h"))
|
||||
usage(builtin_merge_ours_usage);
|
||||
|
||||
/*
|
||||
* We need to exit with 2 if the index does not match our HEAD tree,
|
||||
* because the current index is what we will be committing as the
|
||||
* merge result.
|
||||
* The contents of the current index becomes the tree we
|
||||
* commit. The index must match HEAD, or this merge cannot go
|
||||
* through.
|
||||
*/
|
||||
if (cmd_diff_index(NARGS, diff_index_args, prefix))
|
||||
if (read_cache() < 0)
|
||||
die_errno("read_cache failed");
|
||||
if (index_differs_from("HEAD", 0, 0))
|
||||
exit(2);
|
||||
exit(0);
|
||||
}
|
||||
|
|
Загрузка…
Ссылка в новой задаче