merge(third_party/git): Merge squashed git subtree at v2.23.0
Merge commit '1b593e1ea4' as 'third_party/git'
This commit is contained in:
commit
7ef0d62730
3629 changed files with 1139935 additions and 0 deletions
57
third_party/git/builtin/write-tree.c
vendored
Normal file
57
third_party/git/builtin/write-tree.c
vendored
Normal file
|
|
@ -0,0 +1,57 @@
|
|||
/*
|
||||
* GIT - The information manager from hell
|
||||
*
|
||||
* Copyright (C) Linus Torvalds, 2005
|
||||
*/
|
||||
#define USE_THE_INDEX_COMPATIBILITY_MACROS
|
||||
#include "builtin.h"
|
||||
#include "cache.h"
|
||||
#include "config.h"
|
||||
#include "tree.h"
|
||||
#include "cache-tree.h"
|
||||
#include "parse-options.h"
|
||||
|
||||
static const char * const write_tree_usage[] = {
|
||||
N_("git write-tree [--missing-ok] [--prefix=<prefix>/]"),
|
||||
NULL
|
||||
};
|
||||
|
||||
int cmd_write_tree(int argc, const char **argv, const char *cmd_prefix)
|
||||
{
|
||||
int flags = 0, ret;
|
||||
const char *tree_prefix = NULL;
|
||||
struct object_id oid;
|
||||
const char *me = "git-write-tree";
|
||||
struct option write_tree_options[] = {
|
||||
OPT_BIT(0, "missing-ok", &flags, N_("allow missing objects"),
|
||||
WRITE_TREE_MISSING_OK),
|
||||
OPT_STRING(0, "prefix", &tree_prefix, N_("<prefix>/"),
|
||||
N_("write tree object for a subdirectory <prefix>")),
|
||||
{ OPTION_BIT, 0, "ignore-cache-tree", &flags, NULL,
|
||||
N_("only useful for debugging"),
|
||||
PARSE_OPT_HIDDEN | PARSE_OPT_NOARG, NULL,
|
||||
WRITE_TREE_IGNORE_CACHE_TREE },
|
||||
OPT_END()
|
||||
};
|
||||
|
||||
git_config(git_default_config, NULL);
|
||||
argc = parse_options(argc, argv, cmd_prefix, write_tree_options,
|
||||
write_tree_usage, 0);
|
||||
|
||||
ret = write_cache_as_tree(&oid, flags, tree_prefix);
|
||||
switch (ret) {
|
||||
case 0:
|
||||
printf("%s\n", oid_to_hex(&oid));
|
||||
break;
|
||||
case WRITE_TREE_UNREADABLE_INDEX:
|
||||
die("%s: error reading the index", me);
|
||||
break;
|
||||
case WRITE_TREE_UNMERGED_INDEX:
|
||||
die("%s: error building trees", me);
|
||||
break;
|
||||
case WRITE_TREE_PREFIX_ERROR:
|
||||
die("%s: prefix %s not found", me, tree_prefix);
|
||||
break;
|
||||
}
|
||||
return ret;
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue