Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
git-annex-smudge(1)	    General Commands Manual	   git-annex-smudge(1)

NAME
       git-annex-smudge	- git filter driver for	git-annex

SYNOPSIS
       git annex smudge	[--clean] file

       git annex smudge	--update

DESCRIPTION
       This  command  lets git-annex be	used as	a git filter driver which lets
       annexed files in	the git	repository to be unlocked,  instead  of	 being
       symlinks, and lets git add store	files in the annex.

       When  adding  a	file with git add, the annex.largefiles	config is con-
       sulted to decide	if a given file	should be added	to git	as-is,	or  if
       its  content  are large enough to need to use git-annex.	 The annex.gi-
       taddtoannex setting overrides that; setting it to  false	 prevents  git
       add from	adding files to	the annex.

       However,	 if git-annex can tell that a file was annexed before, it will
       still be	added to the annex even	when those configs would normally pre-
       vent  it.  Two examples of this are adding a modified version of	an an-
       nexed file, and moving an annexed file to a  new	 filename  and	adding
       that.

       The git configuration to	use this command as a filter driver is as fol-
       lows.  This is normally set up for you by git-annex init, so you	should
       not need	to configure it	manually.

	[filter	"annex"]
		smudge = git-annex smudge %f
		clean =	git-annex smudge --clean %f

       To  make	 git  use that filter driver, it needs to be configured	in the
       .gitattributes file or in .git/info/attributes. The latter is  normally
       configured  when	 a  repository is initialized, with the	following con-
       tents:

	* filter=annex
	.* !filter

       The smudge filter does not provide git  with  the  content  of  annexed
       files, because that would be slow and triggers memory leaks in git. In-
       stead, it records which worktree	files need to be updated, and git  an-
       nex smudge --update later updates the work tree to contain the content.
       That  is	 run  by  several  git	hooks,	including  post-checkout   and
       post-merge.  However,  a	 few  git  commands, notably git stash and git
       cherry-pick, do not run any hooks, so after using  those	 commands  you
       can manually run	git annex smudge --update to update the	working	tree.

SEE ALSO
       git-annex(1)

AUTHOR
       Joey Hess <id@joeyh.name>

							   git-annex-smudge(1)

NAME | SYNOPSIS | DESCRIPTION | SEE ALSO | AUTHOR

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=git-annex-smudge&sektion=1&manpath=FreeBSD+12.2-RELEASE+and+Ports>

home | help