NAME
git-lfs-pull - Download all Git LFS files for current ref & checkout
SYNOPSIS
git lfs pull [options] [<remote>]
DESCRIPTION
Download Git LFS objects for the currently checked out ref, and update the working copy with the downloaded content if required.
This is generally equivalent to running the following two commands:
$ git lfs fetch [options] [<remote>] $ git lfs checkout
If the installed Git version is at least 2.42.0, in a non-bare repository
this command will by default fetch and check out Git LFS objects for files
only if they are present in the Git index and if they match a Git LFS
filter attribute from a .gitattributes file that is present in either
the index or the current working tree (or, as is always the case, if
they match a Git LFS filter attribute in a local gitattributes file
such as $GIT_DIR/info/attributes). These constraints do not apply
with prior versions of Git.
In a repository with a partial clone or sparse checkout, it is therefore
advisable to check out all .gitattributes files from HEAD before
using this command, if Git v2.42.0 or later is installed. Alternatively,
the GIT_ATTR_SOURCE environment variable may be set to HEAD, which
will cause Git to only read attributes from .gitattributes files in
HEAD and ignore those in the index or working tree.
In a bare repository, if the installed Git version is at least 2.42.0,
this command will by default fetch Git LFS objects for files only if
they are present in the Git index and if they match a Git LFS filter
attribute from a local gitattributes file such as
$GIT_DIR/info/attributes. Any .gitattributes files in HEAD will
be ignored, unless the GIT_ATTR_SOURCE environment variable is set
to HEAD, and any .gitattributes files in the index or current
working tree will always be ignored. These constraints do not apply
with prior versions of Git.
OPTIONS
-I <paths>--include=<paths>-
Specify lfs.fetchinclude just for this invocation; see INCLUDE AND EXCLUDE
-X <paths>--exclude=<paths>-
Specify lfs.fetchexclude just for this invocation; see INCLUDE AND EXCLUDE
INCLUDE AND EXCLUDE
You can configure Git LFS to only fetch objects to satisfy references in certain paths of the repo, and/or to exclude certain paths of the repo, to reduce the time you spend downloading things you do not use.
In your Git configuration or in a .lfsconfig file, you may set either
or both of lfs.fetchinclude and lfs.fetchexclude to comma-separated
lists of paths. If lfs.fetchinclude is defined, Git LFS objects will
only be fetched if their path matches one in that list, and if
lfs.fetchexclude is defined, Git LFS objects will only be fetched if
their path does not match one in that list. Paths are matched using
wildcard matching as per gitignore(5).
Note that using the command-line options -I and -X override the
respective configuration settings. Setting either option to an empty
string clears the value.
DEFAULT REMOTE
Without arguments, pull downloads from the default remote. The default
remote is the same as for git pull, i.e. based on the remote branch
you’re tracking first, or origin otherwise.
SEE ALSO
git-lfs-fetch(1), git-lfs-checkout(1), gitattributes(5), gitignore(5).
Part of the git-lfs(1) suite.