summaryrefslogtreecommitdiff
path: root/builtin/send-pack.c
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2017-03-27 10:59:27 -0700
committerJunio C Hamano <gitster@pobox.com>2017-03-27 10:59:27 -0700
commit4e87565d2a3e315b7afc39e9e1fe98c5607a1b11 (patch)
tree6f268f4c98d8c9a06536a5a2fbea5ee9a7df83fc /builtin/send-pack.c
parent4a2b50a1e3667ee40bf08726fb249b634e9df1b6 (diff)
parent511155db51ff9870d2b3fd74c6dfdd558b5fa37b (diff)
downloadgit-4e87565d2a3e315b7afc39e9e1fe98c5607a1b11.tar.gz
Merge branch 'sb/push-options-via-transport'
Recently we started passing the "--push-options" through the external remote helper interface; now the "smart HTTP" remote helper understands what to do with the passed information. * sb/push-options-via-transport: remote-curl: allow push options send-pack: send push options correctly in stateless-rpc case
Diffstat (limited to 'builtin/send-pack.c')
-rw-r--r--builtin/send-pack.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/builtin/send-pack.c b/builtin/send-pack.c
index 1ff5a67538..832fd7ed0a 100644
--- a/builtin/send-pack.c
+++ b/builtin/send-pack.c
@@ -144,6 +144,7 @@ int cmd_send_pack(int argc, const char **argv, const char *prefix)
unsigned force_update = 0;
unsigned quiet = 0;
int push_cert = 0;
+ struct string_list push_options = STRING_LIST_INIT_NODUP;
unsigned use_thin_pack = 0;
unsigned atomic = 0;
unsigned stateless_rpc = 0;
@@ -165,6 +166,9 @@ int cmd_send_pack(int argc, const char **argv, const char *prefix)
{ OPTION_CALLBACK,
0, "signed", &push_cert, "yes|no|if-asked", N_("GPG sign the push"),
PARSE_OPT_OPTARG, option_parse_push_signed },
+ OPT_STRING_LIST(0, "push-option", &push_options,
+ N_("server-specific"),
+ N_("option to transmit")),
OPT_BOOL(0, "progress", &progress, N_("force progress reporting")),
OPT_BOOL(0, "thin", &use_thin_pack, N_("use thin pack")),
OPT_BOOL(0, "atomic", &atomic, N_("request atomic transaction on remote side")),
@@ -199,6 +203,7 @@ int cmd_send_pack(int argc, const char **argv, const char *prefix)
args.use_thin_pack = use_thin_pack;
args.atomic = atomic;
args.stateless_rpc = stateless_rpc;
+ args.push_options = push_options.nr ? &push_options : NULL;
if (from_stdin) {
struct argv_array all_refspecs = ARGV_ARRAY_INIT;