Re: [PATCH] new-workdir: Never try to recurse into submodules on the initial checkout.
- From
Jonathan Nieder <jrnieder@gmail.com>
- Date
- Jan 14, 2019, 21:34 UTC
- Message-ID
- <20190114213430.GC162110@google.com>
- In-Reply-To
- <20190114172702.19959-1-marcnarc@xiplink.com>
Hi,
Marc Branchaud wrote:
Show 5 quoted lines
> The new workdir is empty before the checkout, so attempts to recurse into > a non-existent submodule directory fail. > > Signed-off-by: Marc Branchaud <marcnarc@xiplink.com> > ---
Thanks for reporting. Can you describe the error message when it fails here?
> Until the worktree command supports submodules I've gone back to using the > git-new-workdir script, but it fails if my config has > submdodule.recurse=true.
Oh, dear. In general, the project does a better job at supporting "git worktree" than "git new-workdir", but I don't blame you about this.
Noting locally as another vote for getting submodules to play well with worktrees soon.
[...]
Show 13 quoted lines
> contrib/workdir/git-new-workdir | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/contrib/workdir/git-new-workdir b/contrib/workdir/git-new-workdir > index 888c34a521..5de1dc3c58 100755 > --- a/contrib/workdir/git-new-workdir > +++ b/contrib/workdir/git-new-workdir > @@ -102,4 +102,4 @@ trap - $siglist > > # checkout the branch (either the same as HEAD from the original repository, > # or the one that was asked for) > -git checkout -f $branch > +git -c submodule.recurse=false checkout -f $branch
nit: can this use "git checkout --no-recurse-submodules" instead of -c?
In general, we tend to recommend that kind of option instead of --config in scripts.
Thanks, Jonathan