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.sivar...@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.

-- 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

Reply via email to