Commits

Anonymous committed d23842f

rename --exec to --receive-pack for push and send-pack

For now it's just to get a more descriptive name. Later we might update the
push protocol to run more than one program on the other end. Moreover this
matches better the corresponding config option remote.<name>. receivepack.

--exec continues to work

Signed-off-by: Uwe Kleine-König <zeisberg@informatik.uni-freiburg.de>
Signed-off-by: Junio C Hamano <junkio@cox.net>

Comments (0)

Files changed (4)

Documentation/git-push.txt

 
 SYNOPSIS
 --------
-'git-push' [--all] [--tags] [--exec=<git-receive-pack>] [--repo=all] [-f | --force] [-v] [<repository> <refspec>...]
+'git-push' [--all] [--tags] [--receive-pack=<git-receive-pack>] [--repo=all] [-f | --force] [-v] [<repository> <refspec>...]
 
 DESCRIPTION
 -----------
 	addition to refspecs explicitly listed on the command
 	line.
 
-\--exec::
+\--receive-pack=<git-receive-pack>::
 	Path to the 'git-receive-pack' program on the remote
 	end.  Sometimes useful when pushing to a remote
 	repository over ssh, and you do not have the program in
 	a directory on the default $PATH.
 
+\--exec=<git-receive-pack>::
+	Same as \--receive-pack=<git-receive-pack>.
+
 -f, \--force::
 	Usually, the command refuses to update a remote ref that is
 	not a descendant of the local ref used to overwrite it.

Documentation/git-send-pack.txt

 
 SYNOPSIS
 --------
-'git-send-pack' [--all] [--force] [--exec=<git-receive-pack>] [--verbose] [--thin] [<host>:]<directory> [<ref>...]
+'git-send-pack' [--all] [--force] [--receive-pack=<git-receive-pack>] [--verbose] [--thin] [<host>:]<directory> [<ref>...]
 
 DESCRIPTION
 -----------
 
 OPTIONS
 -------
-\--exec=<git-receive-pack>::
+\--receive-pack=<git-receive-pack>::
 	Path to the 'git-receive-pack' program on the remote
 	end.  Sometimes useful when pushing to a remote
 	repository over ssh, and you do not have the program in
 	a directory on the default $PATH.
 
+\--exec=<git-receive-pack>::
+	Same as \--receive-pack=<git-receive-pack>.
+
 \--all::
 	Instead of explicitly specifying which refs to update,
 	update all refs that locally exist.
 
 #define MAX_URI (16)
 
-static const char push_usage[] = "git-push [--all] [--tags] [--exec=<git-receive-pack>] [--repo=all] [-f | --force] [-v] [<repository> <refspec>...]";
+static const char push_usage[] = "git-push [--all] [--tags] [--receive-pack=<git-receive-pack>] [--repo=all] [-f | --force] [-v] [<repository> <refspec>...]";
 
 static int all, tags, force, thin = 1, verbose;
-static const char *execute;
+static const char *receivepack;
 
 #define BUF_SIZE (2084)
 static char buffer[BUF_SIZE];
 			add_refspec(xstrdup(value));
 		else if (config_get_receivepack &&
 			 !strcmp(key + 7 + config_repo_len, ".receivepack")) {
-			if (!execute) {
-				char *ex = xmalloc(strlen(value) + 8);
-				sprintf(ex, "--exec=%s", value);
-				execute = ex;
+			if (!receivepack) {
+				char *rp = xmalloc(strlen(value) + 16);
+				sprintf(rp, "--receive-pack=%s", value);
+				receivepack = rp;
 			} else
 				error("more than one receivepack given, using the first");
 		}
 	config_current_uri = 0;
 	config_uri = uri;
 	config_get_refspecs = !(refspec_nr || all || tags);
-	config_get_receivepack = (execute == NULL);
+	config_get_receivepack = (receivepack == NULL);
 
 	git_config(get_remote_config);
 	return config_current_uri;
 		argv[argc++] = "--all";
 	if (force)
 		argv[argc++] = "--force";
-	if (execute)
-		argv[argc++] = execute;
+	if (receivepack)
+		argv[argc++] = receivepack;
 	common_argc = argc;
 
 	for (i = 0; i < n; i++) {
 			thin = 0;
 			continue;
 		}
+		if (!strncmp(arg, "--receive-pack=", 15)) {
+			receivepack = arg;
+			continue;
+		}
 		if (!strncmp(arg, "--exec=", 7)) {
-			execute = arg;
+			receivepack = arg;
 			continue;
 		}
 		usage(push_usage);
 #include "exec_cmd.h"
 
 static const char send_pack_usage[] =
-"git-send-pack [--all] [--force] [--exec=<git-receive-pack>] [--verbose] [--thin] [<host>:]<directory> [<ref>...]\n"
+"git-send-pack [--all] [--force] [--receive-pack=<git-receive-pack>] [--verbose] [--thin] [<host>:]<directory> [<ref>...]\n"
 "  --all and explicit <ref> specification are mutually exclusive.";
-static const char *exec = "git-receive-pack";
+static const char *receivepack = "git-receive-pack";
 static int verbose;
 static int send_all;
 static int force_update;
 		char *arg = *argv;
 
 		if (*arg == '-') {
+			if (!strncmp(arg, "--receive-pack=", 15)) {
+				receivepack = arg + 15;
+				continue;
+			}
 			if (!strncmp(arg, "--exec=", 7)) {
-				exec = arg + 7;
+				receivepack = arg + 7;
 				continue;
 			}
 			if (!strcmp(arg, "--all")) {
 		usage(send_pack_usage);
 	verify_remote_names(nr_heads, heads);
 
-	pid = git_connect(fd, dest, exec);
+	pid = git_connect(fd, dest, receivepack);
 	if (pid < 0)
 		return 1;
 	ret = send_pack(fd[0], fd[1], nr_heads, heads);