From: Martin Waitz <tali@admingilde•org>
To: git@vger•kernel.org
Subject: [PATCH] allow commands to be executed in submodules
Date: Sun, 20 May 2007 17:39:08 +0200 [thread overview]
Message-ID: <20070520153908.GF5412@admingilde.org> (raw)
Add an extra "submodule" field to struct child_process to be able to
easily start commands which are to be executed in a submodule
repository.
Signed-off-by: Martin Waitz <tali@admingilde•org>
---
run-command.c | 13 ++++++
run-command.h | 1 +
2 files changed, 14 insertions(+), 0 deletions(-)
diff --git a/run-command.c b/run-command.c
index eff523e..c2475e4 100644
--- a/run-command.c
+++ b/run-command.c
@@ -73,6 +73,19 @@ int start_command(struct child_process *cmd)
close(cmd->out);
}
+ if (cmd->submodule) {
+ int err = chdir(cmd->submodule);
+ if (err) {
+ die("cannot exec %s in %s.",
+ cmd->argv[0], cmd->submodule);
+ }
+ /* don't inherit supermodule environment */
+ unsetenv(GIT_DIR_ENVIRONMENT);
+ unsetenv(DB_ENVIRONMENT);
+ unsetenv(INDEX_ENVIRONMENT);
+ unsetenv(GRAFT_ENVIRONMENT);
+ }
+
if (cmd->git_cmd) {
execv_git_cmd(cmd->argv);
} else {
diff --git a/run-command.h b/run-command.h
index 3680ef9..2940186 100644
--- a/run-command.h
+++ b/run-command.h
@@ -16,6 +16,7 @@ struct child_process {
pid_t pid;
int in;
int out;
+ const char *submodule;
unsigned close_in:1;
unsigned close_out:1;
unsigned no_stdin:1;
--
1.5.2.2.g081e
--
Martin Waitz
next reply other threads:[~2007-05-20 15:39 UTC|newest]
Thread overview: 20+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-05-20 15:39 Martin Waitz [this message]
2007-05-20 18:14 ` [PATCH] allow commands to be executed in submodules Alex Riesen
2007-05-20 18:25 ` Junio C Hamano
2007-05-20 20:48 ` Martin Waitz
2007-05-20 20:59 ` Alex Riesen
2007-05-20 21:08 ` Martin Waitz
[not found] ` <20070521090339.GH942MdfPADPa@greensroom.kotnet.org>
2007-05-21 22:48 ` [PATCH] Add ability to specify environment extension to run_command Alex Riesen
2007-05-21 23:02 ` Junio C Hamano
2007-05-22 6:03 ` Martin Waitz
2007-05-22 6:33 ` Junio C Hamano
2007-05-22 6:38 ` Shawn O. Pearce
2007-05-22 6:54 ` Sven Verdoolaege
2007-05-22 21:51 ` Alex Riesen
2007-05-22 21:47 ` Alex Riesen
2007-05-22 21:48 ` [PATCH] Add run_command_v_opt_cd: chdir into a directory before exec Alex Riesen
2007-05-22 21:48 ` [PATCH] Add ability to specify environment extension to run_command Alex Riesen
2007-05-22 21:49 ` [PATCH] Allow environment variables to be unset in the processes started by run_command Alex Riesen
2007-05-22 22:19 ` [PATCH] Add ability to specify environment extension to run_command Junio C Hamano
2007-05-22 23:14 ` Alex Riesen
2007-05-23 20:21 ` [PATCH] Allow environment variables to be unset in the processes started by run_command Alex Riesen
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20070520153908.GF5412@admingilde.org \
--to=tali@admingilde$(echo .)org \
--cc=git@vger$(echo .)kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox