Re: git fetch <remote> <branch> behaves weirdely when run in a worktree
- From
Junio C Hamano <gitster@pobox.com>
- Date
- Sep 26, 2018, 17:05 UTC
- Message-ID
- <xmqqpnx0mbos.fsf@gitster-ct.c.googlers.com>
- In-Reply-To
- <20180926160938.GA15312@duynguyen.home>
Duy Nguyen <pclouds@gmail.com> writes:
Show 15 quoted lines
> On Wed, Sep 26, 2018 at 05:24:14PM +0200, Duy Nguyen wrote: >> On Wed, Sep 26, 2018 at 6:46 AM Kaartic Sivaraam >> <kaartic.sivaraam@gmail.com> wrote: >> > This is the most interesting part of the issue. I **did not** run >> >'git fetch ...' in between those cat commands. I was surprised by >> >how the contents of FETCH_HEAD are changing without me spawning any >> >git processes that might change it. Am I missing something here? As >> >far as i could remember, there wasn't any IDE running that might >> >automatically spawn git commands especially in that work >> >tree. Weird. > > Maybe something like this could help track down that rogue "git fetch" > process (it's definitely _some_ process writing to the wrong file; or > some file synchronization thingy is going on). You can log more of > course, but this is where FETCH_HEAD is updated.
Well, a background-ish thing could be some vendor-provided copy of Git that has nothing to do with what Kaartic would be compiling with this patch X-<.
Show 23 quoted lines
> -- 8< --
> diff --git a/builtin/fetch.c b/builtin/fetch.c
> index 0696abfc2a..0dfb580e92 100644
> --- a/builtin/fetch.c
> +++ b/builtin/fetch.c
> @@ -786,6 +786,13 @@ static int store_updated_refs(const char *raw_url, const char *remote_name,
> if (!fp)
> return error_errno(_("cannot open %s"), filename);
>
> + {
> + struct strbuf sb = STRBUF_INIT;
> + strbuf_addf(&sb, "( date; ls -l /proc/%d/cwd ) >>%s.log", getpid(), filename);
> + system(sb.buf);
> + strbuf_release(&sb);
> + }
> +
> if (raw_url)
> url = transport_anonymize_url(raw_url);
> else
> -- 8< --
>
> --
> Duy