Git LFS Push of large files results in a failure with i/o timeout

Platform Notice: Data Center Only - This article only applies to Atlassian apps on the Data Center platform.

Note that this KB was created for the Data Center version of the product. Data Center KBs for non-Data-Center-specific features may also work for Server versions of the product, however they have not been tested. Support for Server* products ended on February 15th 2024. If you are running a Server product, you can visit the Atlassian Server end of support announcement to review your migration options.

*Except Fisheye and Crucible

Summary

When pushing large objects with Git LFS, the push fails with an i/o timeout error. This article applies when:

  • You are using Git LFS (Large File Storage) to push large binary files

  • The push fails with the specific message: read tcp X.X.X.X:port->X.X.X.X:443: i/o timeout

  • The push succeeds for smaller files but fails for files larger than ~1-2 GB

If the timeout occurs on regular repository (non-LFS) git push operations, this is a different issue, contact Atlassian Support with the git push error output.

Environment

  • Bitbucket Server & Data Center

  • Git LFS

Diagnosis

The git client displays the following:

~ username > git push Uploading LFS objects: 0% (0/1), 2 GB | 104 MB/s, done. LFS: Put "https://example.com/rest/git-lfs/storage/EXAMPLE/example-repo/d1786cec9c0d23b42e088b57b425f9f9fcfcad53": read tcp 192.168.0.1:1046->192.168.1.1:443: i/o timeout error: failed to push some refs to 'https://example.com/rest/git-lfs/storage/EXAMPLE/example-repo.git'~ username >

The key part of the message above is: read tcp 192.168.0.1:1046->192.168.1.1:443: i/o timeout

Cause

LFS is timing out waiting for the next TCP read or write. This is generally seen when pushing larger objects or a large commit, containing multiple large objects.

Solution

To resolve this, the user will need to increase the lfs.activitytimeout value for their git client. Depending on the version of your client, recent versions have a default value of 30 seconds. In the below command, we will increase to 60 seconds. 

git config lfs.activitytimeout 60

Choosing the right timeout value:

  • The default lfs.activitytimeout in recent Git LFS versions is 30 seconds.

  • For files up to 5 GB on a fast network (100 Mbps+): try 60 seconds first.

  • For files larger than 5 GB or on slower networks: try 120–300 seconds.

  • For very large files (10 GB+) or slow WAN links: try 600 seconds and increase further if needed.

To apply the setting: git config lfs.activitytimeout <seconds>. To apply globally for all repositories: git config --global lfs.activitytimeout <seconds>

Verification

  1. Re-run the failing push: git push

  2. Watch the LFS upload progress — it should now complete without the i/o timeout message.

  3. If it still times out, double the timeout value and retry.

  4. Check your current timeout setting: git config lfs.activitytimeout

Resource: Git LFS config manual

Updated on June 14, 2026

Still need help?

The Atlassian Community is here for you.