= git-lfs-pull(1)

== 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 equivalent to running the following 2 commands:

git lfs fetch [options] [] git lfs checkout

== 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), gitignore(5).

Part of the git-lfs(1) suite.
