Git push hangs in LFS operation, 0% uploaded

My setup on Windows 10 is:

set GIT_SSH=C:\Windows\System32\OpenSSH\ssh.exe

Git version is:

16:27:32.319567 exec-cmd.c:237          trace: resolved executable dir: C:/Program Files/Git/mingw64/bin
16:27:32.320566 git.c:447               trace: built-in: git version
git version

and my command line is:

git push --set-upstream origin master

That hangs at the following point:

16:12:26.257183 exec-cmd.c:237          trace: resolved executable dir: C:/Program Files/Git/mingw64/bin
16:12:26.261172 git.c:447               trace: built-in: git push --set-upstream origin master
16:12:26.263166 run-command.c:667       trace: run_command: unset GIT_PREFIX; 'C:\Windows\System32\OpenSSH\ssh.exe' 'git-receive-pack '\''Equinox-Vision/EquinoxContentTemplate.git'\'''
warning: agent returned different signature type ssh-rsa (expected rsa-sha2-512)
16:12:27.354753 run-command.c:667       trace: run_command: .git/hooks/pre-push origin
16:12:27.419580 exec-cmd.c:237          trace: resolved executable dir: C:/Program Files/Git/mingw64/libexec/git-core
16:12:27.421575 git.c:734               trace: exec: git-lfs pre-push origin
16:12:27.421575 run-command.c:667       trace: run_command: git-lfs pre-push origin
16:12:27.442437 trace git-lfs: exec: git 'version'
16:12:27.495296 trace git-lfs: exec: git '-c' 'filter.lfs.smudge=' '-c' 'filter.lfs.clean=' '-c' 'filter.lfs.process=' '-c' 'filter.lfs.required=false' 'remote' '-v'
16:12:27.523052 trace git-lfs: exec: git '-c' 'filter.lfs.smudge=' '-c' 'filter.lfs.clean=' '-c' 'filter.lfs.process=' '-c' 'filter.lfs.required=false' 'remote'
16:12:27.554151 trace git-lfs: exec: git '-c' 'filter.lfs.smudge=' '-c' 'filter.lfs.clean=' '-c' 'filter.lfs.process=' '-c' 'filter.lfs.required=false' 'rev-parse' 'HEAD' '--symbolic-full-name' 'HEAD'
16:12:27.584182 trace git-lfs: exec: git '-c' 'filter.lfs.smudge=' '-c' 'filter.lfs.clean=' '-c' 'filter.lfs.process=' '-c' 'filter.lfs.required=false' 'rev-parse' '--git-dir' '--show-toplevel'
16:12:27.618043 trace git-lfs: exec: uname
16:12:27.694838 trace git-lfs: exec: cygpath '-w' '.git'
16:12:27.756548 trace git-lfs: exec: cygpath '-w' 'C:/Develop/eqcontenttemplate'
16:12:27.815983 trace git-lfs: exec: git 'config' '-l'
16:12:27.847656 trace git-lfs: exec: git 'rev-parse' '--is-bare-repository'
16:12:27.878411 trace git-lfs: exec: git 'config' '-l' '--blob' ':.lfsconfig'
16:12:27.909827 trace git-lfs: exec: git 'config' '-l' '--blob' 'HEAD:.lfsconfig'
16:12:27.939253 trace git-lfs: pre-push: refs/heads/master e8d42cde1df5477faaef7ff92cee3327aedf1799 refs/heads/master 0000000000000000000000000000000000000000
16:12:27.940305 trace git-lfs: exec: git '-c' 'filter.lfs.smudge=' '-c' 'filter.lfs.clean=' '-c' 'filter.lfs.process=' '-c' 'filter.lfs.required=false' 'show-ref'
16:12:27.970373 trace git-lfs: exec: git '-c' 'filter.lfs.smudge=' '-c' 'filter.lfs.clean=' '-c' 'filter.lfs.process=' '-c' 'filter.lfs.required=false' 'ls-remote' '--heads' '--tags' '-q' 'origin'
16:12:29.324768 trace git-lfs: tq: running as batched queue, batch size of 100
16:12:29.328407 trace git-lfs: run_command: git rev-list --objects --ignore-missing --not --remotes=origin --stdin --
16:12:29.339405 trace git-lfs: exec: git '-c' 'filter.lfs.smudge=' '-c' 'filter.lfs.clean=' '-c' 'filter.lfs.process=' '-c' 'filter.lfs.required=false' 'cat-file' '--batch-check'
16:12:29.357060 trace git-lfs: exec: git '-c' 'filter.lfs.smudge=' '-c' 'filter.lfs.clean=' '-c' 'filter.lfs.process=' '-c' 'filter.lfs.required=false' 'rev-parse' '--git-common-dir'
16:12:29.405273 trace git-lfs: exec: cygpath '-w' '.git'
16:12:29.468208 trace git-lfs: exec: cygpath '-w' '.git'
16:12:29.571140 trace git-lfs: tq: sending batch of size 58
16:12:29.571140 trace git-lfs: run_command: C:\Windows\System32\OpenSSH\ssh.exe -- git-lfs-authenticate Equinox-Vision/EquinoxContentTemplate.git upload
16:12:29.573134 trace git-lfs: exec: C:\Windows\System32\OpenSSH\ssh.exe '--' '' 'git-lfs-authenticate Equinox-Vision/EquinoxContentTemplate.git upload'

If I don’t use the Windows 10 built-in ssh, and use Git’s local ssh, it doesn’t cooperate with the Windows ssh-agent, and the same operation failes when git-lfs tries to make a ssh connection:

16:31:06.057960 trace git-lfs: exec: ssh '--' '' 'git-lfs-authenticate Equinox-Vision/EquinoxContentTemplate.git upload'
16:31:06.787231 trace git-lfs: ssh: failed, error: exit status 255, message: Permission denied (publickey). (try: 4/6)

But that part’s understandable - the hang in the previous instance isn’t. It looks like it’s stuck waiting for the server?

Hi @ivoras

I don’t have any Windows expertise whatsoever but I didn’t want to leave this alone. Does this sound like the same problem?


Yes, it does looks very slimilar, possibly identical.
Both hang in git-lfs-authenticate.

In the meantime, I’ve re-created the repo without LFS (It’s a new project) and pushed it without issues.