]> git.feebdaed.xyz Git - 0xmirror/git-lfs.git/commit
docs/man/git-lfs-faq.adoc: note Git memory usage
authorChris Darroch <chrisd8088@github.com>
Mon, 3 Nov 2025 06:11:49 +0000 (22:11 -0800)
committerChris Darroch <chrisd8088@github.com>
Mon, 3 Nov 2025 07:01:56 +0000 (23:01 -0800)
commita21ad87ef4edd9eb161a033c7f57607a20c819c3
treed5b444c5e3e162f4c58c7aa96e8440f2e3dcbc6e
parent6f73c9bbb9c01c9228f43217b0c856dadce71e9d
docs/man/git-lfs-faq.adoc: note Git memory usage

As discussed in response to the question raised in issue #6132, at
present Git's implementation of the long-running filter protocol is such
that for each file whose contents are "smudged" by a process like the
"git lfs filter-process" command, Git reads the output into an in-memory
buffer:

  https://github.com/git/git/blob/v2.51.2/convert.c#L912-L913

As a result, Git's memory usage scales with the size of the largest
Git LFS file when a "git clone" command is run, unless the Git LFS client
is configured not to "smudge" files.

To help users who may have questions about this behaviour in the future,
we add a section to our FAQ manual page which explains the current
situation and how it may be ameliorated by avoiding the "smudge" filter
step during cloning and using the "git lfs pull" command instead to
populate a working tree with Git LFS files.
docs/man/git-lfs-faq.adoc