From: Jeff King <peff@peff.net>
To: Lars Schneider <larsxschneider@gmail.com>
Cc: Jacob Keller <jacob.keller@gmail.com>,
Stefan Beller <sbeller@google.com>,
Git Users <git@vger.kernel.org>,
Jens.Lehmann@web.de
Subject: Re: [RFC] How to pass Git config command line instructions to Submodule commands?
Date: Thu, 28 Apr 2016 07:25:11 -0400 [thread overview]
Message-ID: <20160428112511.GA11522@sigill.intra.peff.net> (raw)
In-Reply-To: <017AA7DB-5224-49C3-A4A6-6C93005BF006@gmail.com>
On Thu, Apr 28, 2016 at 01:06:45PM +0200, Lars Schneider wrote:
> I got my Git-LFS use case working with the patch below.
> For me it was necessary to export GIT_CONFIG_PARAMETERS
> to make it available to the Git process if the process is
> invoked as follows [2]:
>
> (sanitize_submodule_env; cd "$sm_path" && git <something>")
Hrm. I'm not sure why you need to export. Or perhaps, I am not sure why
it ever works in the first place in git-submodule.sh. In this code:
> diff --git a/git-submodule.sh b/git-submodule.sh
> index 2a84d7e..b02f5b9 100755
> --- a/git-submodule.sh
> +++ b/git-submodule.sh
> @@ -199,7 +199,7 @@ sanitize_submodule_env()
> {
> sanitized_config=$(git submodule--helper sanitize-config)
> clear_local_git_env
> - GIT_CONFIG_PARAMETERS=$sanitized_config
> + export GIT_CONFIG_PARAMETERS=$sanitized_config
> }
If you already have $GIT_CONFIG_PARAMETERS exported when we enter the
function, then we should not need to re-export it when changing the
value in the final line (the export bit is retained by the shell). But
if you don't have it set already, then $sanitized_config must by
definition be empty.
So it should do the right thing without the export.
At the same time, clear_local_git_env() will call "unset" on
GIT_CONFIG_PARAMETERS. Which would clear the export bit, meaning the
final line doesn't ever have any impact on sub-programs, and the whole
thing is totally broken. But then, why does the test in t5550 pass?
Confused...
-Peff
next prev parent reply other threads:[~2016-04-28 11:25 UTC|newest]
Thread overview: 36+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-04-25 10:39 [RFC] How to pass Git config command line instructions to Submodule commands? Lars Schneider
2016-04-25 17:02 ` Stefan Beller
2016-04-25 20:59 ` Jacob Keller
2016-04-25 21:24 ` Jeff King
2016-04-25 21:27 ` Jeff King
2016-04-28 11:06 ` Lars Schneider
2016-04-28 11:25 ` Jeff King [this message]
2016-04-28 12:05 ` Jeff King
2016-04-28 12:17 ` Jeff King
2016-04-28 13:35 ` [PATCH 0/5] fixes for sanitized submodule config Jeff King
2016-04-28 13:36 ` [PATCH 1/5] t5550: fix typo in $HTTPD_URL Jeff King
2016-04-28 15:24 ` Jacob Keller
2016-04-28 15:25 ` Jeff King
2016-04-28 15:26 ` Jacob Keller
2016-04-28 13:37 ` [PATCH 2/5] t5550: break submodule config test into multiple sub-tests Jeff King
2016-04-28 15:21 ` Stefan Beller
2016-04-28 15:25 ` Jeff King
2016-04-28 15:25 ` Jacob Keller
2016-04-28 13:37 ` [PATCH 3/5] submodule: export sanitized GIT_CONFIG_PARAMETERS Jeff King
2016-04-28 15:25 ` Stefan Beller
2016-04-28 15:28 ` Jeff King
2016-04-28 15:35 ` Stefan Beller
2016-04-28 16:51 ` Johannes Schindelin
2016-04-28 15:28 ` Jacob Keller
2016-04-28 15:36 ` Jeff King
2016-04-28 15:40 ` Jacob Keller
2016-04-28 13:38 ` [PATCH 4/5] submodule--helper: move config-sanitizing to submodule.c Jeff King
2016-04-28 15:30 ` Stefan Beller
2016-04-28 15:37 ` Jeff King
2016-04-28 16:28 ` Lars Schneider
2016-04-28 13:39 ` [PATCH 5/5] submodule: use prepare_submodule_repo_env consistently Jeff King
2016-04-28 14:02 ` [PATCH 0/5] fixes for sanitized submodule config Johannes Schindelin
2016-04-28 15:56 ` Stefan Beller
2016-04-28 16:03 ` Jacob Keller
2016-04-28 12:05 ` [RFC] How to pass Git config command line instructions to Submodule commands? Lars Schneider
2016-04-28 13:40 ` Jeff King
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
List information: http://vger.kernel.org/majordomo-info.html
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20160428112511.GA11522@sigill.intra.peff.net \
--to=peff@peff.net \
--cc=Jens.Lehmann@web.de \
--cc=git@vger.kernel.org \
--cc=jacob.keller@gmail.com \
--cc=larsxschneider@gmail.com \
--cc=sbeller@google.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://80x24.org/mirrors/git.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).