threads / patch / 53157

patchgit-submodule.sh: setup uninitialized variables

Subject: [PATCH] git-submodule.sh: setup uninitialized variables

## tl;dr

3 messages between Apr 2, 2020 and Apr 3, 2020. Diffs are folded; open one to read it.

replies: 2people: 2as markdown or json

Jiang Xin· Apr 2, 2020, 08:42 UTC · lore
From: xuejiang <xuejiang@alibaba-inc.com>

We have an environment variable `jobs=16` defined in our CI system, and this environment makes our build job failed with the following message:

    error: pathspec '16' did not match any file(s) known to git

The pathspect '16' for Git command is from the environment variable "jobs".

This is because "git-submodule" command is implemented in shell script, and environment variables may change its behavior. Set values for uninitialized variables, such as "jobs" and "recommend_shallow" will fix this issue.

Helped-by: Jiang Xin <worldhello.net@gmail.com>
Signed-off-by: Li Xuejiang <xuejiang@alibaba-inc.com>
---
 git-submodule.sh | 2 ++
 1 file changed, 2 insertions(+)
Show changes to git-submodule.sh +2 −0
diff --git a/git-submodule.sh b/git-submodule.sh
index 1cb2c0a31b..d69d24a857 100755
--- a/git-submodule.sh
+++ b/git-submodule.sh
@@ -43,6 +43,8 @@ custom_name=
 depth=
 progress=
 dissociate=
+jobs=
+recommend_shallow=
 
 die_if_unmatched ()
 {
-- 
2.20.1.7.g153144c
Eric Sunshine· Apr 2, 2020, 15:11 UTC · re: Jiang Xin · lore

Re: [PATCH] git-submodule.sh: setup uninitialized variables

On Thu, Apr 2, 2020 at 4:43 AM Jiang Xin <worldhello.net@gmail.com> wrote:
Show 7 quoted lines
> We have an environment variable `jobs=16` defined in our CI system, and
> this environment makes our build job failed with the following message:
>
>     error: pathspec '16' did not match any file(s) known to git
>
> The pathspect '16' for Git command is from the environment variable
> "jobs".
s/pathspect/pathspec/
Show 7 quoted lines
> This is because "git-submodule" command is implemented in shell script,
> and environment variables may change its behavior.  Set values for
> uninitialized variables, such as "jobs" and "recommend_shallow" will
> fix this issue.
>
> Helped-by: Jiang Xin <worldhello.net@gmail.com>
> Signed-off-by: Li Xuejiang <xuejiang@alibaba-inc.com>
Jiang Xin· Apr 3, 2020, 02:56 UTC · re: Eric Sunshine · lore

Re: [PATCH] git-submodule.sh: setup uninitialized variables

Eric Sunshine <sunshine@sunshineco.com> 于2020年4月2日周四 下午11:11写道:
Show 11 quoted lines
>
> On Thu, Apr 2, 2020 at 4:43 AM Jiang Xin <worldhello.net@gmail.com> wrote:
> > We have an environment variable `jobs=16` defined in our CI system, and
> > this environment makes our build job failed with the following message:
> >
> >     error: pathspec '16' did not match any file(s) known to git
> >
> > The pathspect '16' for Git command is from the environment variable
> > "jobs".
>
> s/pathspect/pathspec/
Thanks, Eric.  I find Junio has already fixed the typo in his feature branch:
* https://github.com/gitster/git/commits/lx/submodule-clear-variables

← back to recent threads