git-annex-filter-process(1)

πŸ’– git-annex-filter-process πŸ’–

okay bestie, so this is the manual page for git-annex-filter-process, from the General Commands Manual. it's a whole long running git filter process for git-annex and honestly? she's iconic when you need her. let's get into it 🫢


✨ NAME ✨

git-annex-filter-process β€” long running git filter process for git-annex


🌸 SYNOPSIS 🌸

git annex filter-process

πŸ¦‹ DESCRIPTION πŸ¦‹

okay so picture this. when this is not enabled, every single file that git wants to filter means spinning up a brand new git-annex smudge process. and starting a million little processes for a million little files? slow. like, it makes commands like git checkout and git add drag when they're operating on a lot of files. small plot twist though: a lot of locked annexed files do not make git checkout slow, but unlocked files and non-annexed files absolutely do slow it down. no cap πŸ’€

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. so like... pick your fighter, bestie πŸ₯Š

this is used by default in git-annex repositories v9 and above, while v8 repositories use git-annex smudge for backwards compatibility with older versions of git-annex. (yes, the old girl is still holding it down for the legacy crowd πŸ™ˆ)

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

and here's the part that's genuinely so chill of her: there will be no visible difference in behavior between enabling this and not, besides changes in speed and memory use when using git. so the vibe check passes either way, it's just a matter of how fast you're moving πŸƒβ™€οΈπŸ’¨


πŸ‘‘ OPTIONS πŸ‘‘

the git-annex-common-options(1) can be used. that's it, that's the section, she said what she said πŸ’…


πŸŽ€ SEE ALSO πŸŽ€


🌈 AUTHOR 🌈

Joey Hess <id@joeyh.name> β€” a real one, fr fr 🫢


and that's the whole page, bestie!! this was the git-annex-filter-process(1) manual page β€” you can find it hanging out in the git-annex docs like the queen she is. go forth and filter, periodt βœ¨πŸ’–πŸŽ€