File: git-annex-filter-process.mdwn

package info (click to toggle)
git-annex 10.20230126-3
  • links: PTS, VCS
  • area: main
  • in suites: bookworm
  • size: 69,344 kB
  • sloc: haskell: 74,654; javascript: 9,103; sh: 1,304; makefile: 203; perl: 136; ansic: 44
file content (52 lines) | stat: -rw-r--r-- 1,619 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
# NAME

git-annex filter-process - long running git filter process for git-annex

# SYNOPSIS

git annex filter-process

# DESCRIPTION

When this is not enabled, each file that git wants to filter involves
starting up a new `git-annex smudge` process. Starting many such processes
for many files can be slow, and can make commands like `git checkout` and
`git add` slow when they are operating on a lot of files. (A lot of locked
annexed files do not make `git checkout` slow, but unlocked files and
non-annexed files do slow it down.)

On the other hand when this is enabled, `git add` of a large file does an
unnecessary extra read of the file, and pipes its contents into git-annex.
So when this is enabled, it will be faster to use `git-annex add` to add
large files to the annex, rather than `git add`. Other commands that
add files, like `git commit -a`, are also impacted by this.

This is used by default in git-annex repositories v9 and above, while
v8 repositories use `git-annex smudge` for backwards compatability with
older versions of git-annex.

To enable this in a v8 repository, run:

	git config filter.annex.process 'git-annex filter-process'

To disable it, you can just unset the config:

	git config --unset filter.annex.process

There will be no visible difference in behavior between enabling this and
not, besides changes in speed and memory use when using git.

# OPTIONS

* The [[git-annex-common-options]](1) can be used.

# SEE ALSO

[[git-annex]](1)
[[git-annex-smudge]](1)

# AUTHOR

Joey Hess <id@joeyh.name>

Warning: Automatically converted into a man page by mdwn2man. Edit with care.