= git-lfs-filter-process(1)

== NAME

git-lfs-filter-process - Git filter process that converts between pointer and actual content

== SYNOPSIS

`git lfs filter-process` +
`git lfs filter-process --skip`

== DESCRIPTION

Implement the Git process filter API, exchanging handshake messages and
then accepting and responding to requests to either clean or smudge a
file.

filter-process is always run by Git's filter process, and is configured
by the repository's Git attributes.

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 pointer files
will only be replaced with the contents of the corresponding Git LFS
object file if their path matches one in that list, and if
`lfs.fetchexclude` is defined, Git LFS pointer files will only be
replaced with the contents of the corresponding Git LFS object file if
their path does not match one in that list. Paths are matched using
wildcard matching as per gitignore(5). Git LFS pointer files that are
not replaced with the contents of their corresponding object files are
simply copied to standard output without change.

The filter process uses Git's pkt-line protocol to communicate, and is
documented in detail in gitattributes(5).

== OPTIONS

Without any options, filter-process accepts and responds to requests
normally.

`--skip`::
  Skip automatic downloading of objects on clone or pull.
`GIT_LFS_SKIP_SMUDGE`::
  Disables the smudging process. For more, see: git-lfs-config(5).

== SEE ALSO

git-lfs-clean(1), git-lfs-install(1), git-lfs-smudge(1),
gitattributes(5), gitignore(5).

Part of the git-lfs(1) suite.
