revert(3p/git): Revert merge of git upstream at v2.26.2
This causes cgit to serve error pages, which is undesirable. This reverts commit5229c9b232
, reversing changes made tof2b211131f
.
This commit is contained in:
parent
6f8fbf4aa4
commit
93ba78d6f4
1006 changed files with 60537 additions and 148724 deletions
80
third_party/git/builtin/push.c
vendored
80
third_party/git/builtin/push.c
vendored
|
@ -64,7 +64,6 @@ static struct string_list push_options_config = STRING_LIST_INIT_DUP;
|
|||
static const char *map_refspec(const char *ref,
|
||||
struct remote *remote, struct ref *local_refs)
|
||||
{
|
||||
const char *branch_name;
|
||||
struct ref *matched = NULL;
|
||||
|
||||
/* Does "ref" uniquely name our ref? */
|
||||
|
@ -85,8 +84,8 @@ static const char *map_refspec(const char *ref,
|
|||
}
|
||||
|
||||
if (push_default == PUSH_DEFAULT_UPSTREAM &&
|
||||
skip_prefix(matched->name, "refs/heads/", &branch_name)) {
|
||||
struct branch *branch = branch_get(branch_name);
|
||||
starts_with(matched->name, "refs/heads/")) {
|
||||
struct branch *branch = branch_get(matched->name + 11);
|
||||
if (branch->merge_nr == 1 && branch->merge[0]->src) {
|
||||
struct strbuf buf = STRBUF_INIT;
|
||||
strbuf_addf(&buf, "%s:%s",
|
||||
|
@ -144,8 +143,8 @@ static int push_url_of_remote(struct remote *remote, const char ***url_p)
|
|||
return remote->url_nr;
|
||||
}
|
||||
|
||||
static NORETURN void die_push_simple(struct branch *branch,
|
||||
struct remote *remote)
|
||||
static NORETURN int die_push_simple(struct branch *branch,
|
||||
struct remote *remote)
|
||||
{
|
||||
/*
|
||||
* There's no point in using shorten_unambiguous_ref here,
|
||||
|
@ -358,10 +357,8 @@ static int push_with_options(struct transport *transport, struct refspec *rs,
|
|||
|
||||
if (verbosity > 0)
|
||||
fprintf(stderr, _("Pushing to %s\n"), transport->url);
|
||||
trace2_region_enter("push", "transport_push", the_repository);
|
||||
err = transport_push(the_repository, transport,
|
||||
rs, flags, &reject_reasons);
|
||||
trace2_region_leave("push", "transport_push", the_repository);
|
||||
if (err != 0) {
|
||||
fprintf(stderr, "%s", push_get_color(PUSH_COLOR_ERROR));
|
||||
error(_("failed to push some refs to '%s'"), transport->url);
|
||||
|
@ -388,14 +385,30 @@ static int push_with_options(struct transport *transport, struct refspec *rs,
|
|||
}
|
||||
|
||||
static int do_push(const char *repo, int flags,
|
||||
const struct string_list *push_options,
|
||||
struct remote *remote)
|
||||
const struct string_list *push_options)
|
||||
{
|
||||
int i, errs;
|
||||
struct remote *remote = pushremote_get(repo);
|
||||
const char **url;
|
||||
int url_nr;
|
||||
struct refspec *push_refspec = &rs;
|
||||
|
||||
if (!remote) {
|
||||
if (repo)
|
||||
die(_("bad repository '%s'"), repo);
|
||||
die(_("No configured push destination.\n"
|
||||
"Either specify the URL from the command-line or configure a remote repository using\n"
|
||||
"\n"
|
||||
" git remote add <name> <url>\n"
|
||||
"\n"
|
||||
"and then push using the remote name\n"
|
||||
"\n"
|
||||
" git push <name>\n"));
|
||||
}
|
||||
|
||||
if (remote->mirror)
|
||||
flags |= (TRANSPORT_PUSH_MIRROR|TRANSPORT_PUSH_FORCE);
|
||||
|
||||
if (push_options->nr)
|
||||
flags |= TRANSPORT_PUSH_OPTIONS;
|
||||
|
||||
|
@ -535,7 +548,6 @@ int cmd_push(int argc, const char **argv, const char *prefix)
|
|||
struct string_list push_options_cmdline = STRING_LIST_INIT_DUP;
|
||||
struct string_list *push_options;
|
||||
const struct string_list_item *item;
|
||||
struct remote *remote;
|
||||
|
||||
struct option options[] = {
|
||||
OPT__VERBOSITY(&verbosity),
|
||||
|
@ -590,6 +602,20 @@ int cmd_push(int argc, const char **argv, const char *prefix)
|
|||
die(_("--delete is incompatible with --all, --mirror and --tags"));
|
||||
if (deleterefs && argc < 2)
|
||||
die(_("--delete doesn't make sense without any refs"));
|
||||
if (flags & TRANSPORT_PUSH_ALL) {
|
||||
if (tags)
|
||||
die(_("--all and --tags are incompatible"));
|
||||
if (argc >= 2)
|
||||
die(_("--all can't be combined with refspecs"));
|
||||
}
|
||||
if (flags & TRANSPORT_PUSH_MIRROR) {
|
||||
if (tags)
|
||||
die(_("--mirror and --tags are incompatible"));
|
||||
if (argc >= 2)
|
||||
die(_("--mirror can't be combined with refspecs"));
|
||||
}
|
||||
if ((flags & TRANSPORT_PUSH_ALL) && (flags & TRANSPORT_PUSH_MIRROR))
|
||||
die(_("--all and --mirror are incompatible"));
|
||||
|
||||
if (recurse_submodules == RECURSE_SUBMODULES_CHECK)
|
||||
flags |= TRANSPORT_RECURSE_SUBMODULES_CHECK;
|
||||
|
@ -606,43 +632,11 @@ int cmd_push(int argc, const char **argv, const char *prefix)
|
|||
set_refspecs(argv + 1, argc - 1, repo);
|
||||
}
|
||||
|
||||
remote = pushremote_get(repo);
|
||||
if (!remote) {
|
||||
if (repo)
|
||||
die(_("bad repository '%s'"), repo);
|
||||
die(_("No configured push destination.\n"
|
||||
"Either specify the URL from the command-line or configure a remote repository using\n"
|
||||
"\n"
|
||||
" git remote add <name> <url>\n"
|
||||
"\n"
|
||||
"and then push using the remote name\n"
|
||||
"\n"
|
||||
" git push <name>\n"));
|
||||
}
|
||||
|
||||
if (remote->mirror)
|
||||
flags |= (TRANSPORT_PUSH_MIRROR|TRANSPORT_PUSH_FORCE);
|
||||
|
||||
if (flags & TRANSPORT_PUSH_ALL) {
|
||||
if (tags)
|
||||
die(_("--all and --tags are incompatible"));
|
||||
if (argc >= 2)
|
||||
die(_("--all can't be combined with refspecs"));
|
||||
}
|
||||
if (flags & TRANSPORT_PUSH_MIRROR) {
|
||||
if (tags)
|
||||
die(_("--mirror and --tags are incompatible"));
|
||||
if (argc >= 2)
|
||||
die(_("--mirror can't be combined with refspecs"));
|
||||
}
|
||||
if ((flags & TRANSPORT_PUSH_ALL) && (flags & TRANSPORT_PUSH_MIRROR))
|
||||
die(_("--all and --mirror are incompatible"));
|
||||
|
||||
for_each_string_list_item(item, push_options)
|
||||
if (strchr(item->string, '\n'))
|
||||
die(_("push options must not have new line characters"));
|
||||
|
||||
rc = do_push(repo, flags, push_options, remote);
|
||||
rc = do_push(repo, flags, push_options);
|
||||
string_list_clear(&push_options_cmdline, 0);
|
||||
string_list_clear(&push_options_config, 0);
|
||||
if (rc == -1)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue