On Mon, Sep 14, 2015 at 10:37 PM, Joakim Tjernlund <joakim.tjernlund@xxxxxxxxxxxx> wrote: > On Mon, 2015-08-31 at 16:56 +0700, Duy Nguyen wrote: >> On Fri, Aug 21, 2015 at 6:36 PM, Joakim Tjernlund >> <joakim.tjernlund@xxxxxxxxxxxx> wrote: >> > I cannot push: >> > # > git push origin >> > Login for jocke@xxxxxxxxxxxxxxxx >> > Password: >> > Counting objects: 7, done. >> > Delta compression using up to 4 threads. >> > Compressing objects: 100% (7/7), done. >> > Writing objects: 100% (7/7), 13.73 KiB | 0 bytes/s, done. >> > Total 7 (delta 4), reused 0 (delta 0) >> > fatal: Unable to create temporary file '/var/git/tmv3-target-overlay.git/shallow_Un8ZOR': Permission >> > denied >> > fatal: The remote end hung up unexpectedly >> > fatal: The remote end hung up unexpectedly >> >> Noted. Will try to fix (but probably not fast). At first I thought >> this was an old bug, but that old bug [1] is in the fetch/clone path, >> not push. Not sure if the same approach can be reused here (i.e.avoid >> temp files altoghether). >> >> [1] b790e0f (upload-pack: send shallow info over stdin to pack-objects >> - 2014-03-11) > > Noticed I had forgotten to reply ... > > An even simpler fix would be to have an tmp dir within the repo, aka: > /var/git/tmv3-target-overlay.git/tmp/shallow_Un8ZOR > This would cover all cases when one must create a tmp file Sorry for my silence. I intend to put these temp files in $TMPDIR by resurrecting (part of) this patch [1]. Maybe tomorrow. But if you build your own, you can put them in $GIT_DIR/tmp by replacing "shallow_XXXXXX" in setup_temporary_shallow() in shallow.c with "tmp/shallow_XXXX". You need to create the directory "tmp" in advance though, or do "safe_create_leading_directories_const(git_path("tmp/shallow_XXXXX"));" before xmkstemp() [1] http://article.gmane.org/gmane.comp.version-control.git/242787 -- Duy -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html