import qualified Command.Forget
import qualified Command.Proxy
import qualified Command.DiffDriver
+import qualified Command.Smudge
+import qualified Command.Clean
import qualified Command.Undo
import qualified Command.Version
#ifdef WITH_ASSISTANT
, Command.Forget.cmd
, Command.Proxy.cmd
, Command.DiffDriver.cmd
+ , Command.Smudge.cmd
+ , Command.Clean.cmd
, Command.Undo.cmd
, Command.Version.cmd
#ifdef WITH_ASSISTANT
--- /dev/null
+{- git-annex command
+ -
+ - Copyright 2015 Joey Hess <id@joeyh.name>
+ -
+ - Licensed under the GNU GPL version 3 or higher.
+ -}
+
+module Command.Clean where
+
+import Common.Annex
+import Command
+import Annex.Content
+import Annex.Link
+import Git.Types
+
+cmd :: Command
+cmd = dontCheck repoExists $
+ command "clean" SectionPlumbing
+ "git clean filter"
+ paramFile (withParams seek)
+
+seek :: CmdParams -> CommandSeek
+seek = withWords start
+
+start :: [String] -> CommandStart
+start [file] = do
+ error ("clean " ++ file)
+start [] = error "clean filter run without filename; upgrade git"
+start _ = error "clean filter passed multiple filenames"
--- /dev/null
+{- git-annex command
+ -
+ - Copyright 2015 Joey Hess <id@joeyh.name>
+ -
+ - Licensed under the GNU GPL version 3 or higher.
+ -}
+
+module Command.Smudge where
+
+import Common.Annex
+import Command
+import Annex.Content
+import Annex.Link
+import Git.Types
+
+cmd :: Command
+cmd = dontCheck repoExists $
+ command "smudge" SectionPlumbing
+ "git smudge filter"
+ paramFile (withParams seek)
+
+seek :: CmdParams -> CommandSeek
+seek = withWords start
+
+start :: [String] -> CommandStart
+start [file] = do
+ error ("smudge " ++ file)
+start [] = error "smudge filter run without filename; upgrade git"
+start _ = error "smudge filter passed multiple filenames"
--- /dev/null
+# NAME
+
+git-annex clean - git filter driver for git-annex
+
+# SYNOPSIS
+
+git annex clean
+
+# DESCRIPTION
+
+When git-annex is used as a git filter driver, this command is run
+by git commands such as `git add`. It generates a file that
+is added to the git repository and points to the git-annex object
+containing the content of a large file.
+
+To configure git to use git-annex as a git filter driver, place the
+following in the .gitattributes file:
+
+ * filter=annex
+ .* !filter
+
+The annex.largefiles config is consulted 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.
+
+# 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.
--- /dev/null
+# NAME
+
+git-annex smudge - git filter driver for git-annex
+
+# SYNOPSIS
+
+git annex smudge
+
+# DESCRIPTION
+
+When git-annex is used as a git filter driver, this command is run
+by git commands such as `git checkout` and outputs the content of annexed
+objects that pointer files point to.
+
+To configure git to use git-annex as a git filter driver, place the
+following in the .gitattributes file:
+
+ * filter=annex
+ .* !filter
+
+# SEE ALSO
+
+[[git-annex]](1)
+
+[[git-annex-clean]](1)
+
+# AUTHOR
+
+Joey Hess <id@joeyh.name>
+
+Warning: Automatically converted into a man page by mdwn2man. Edit with care.
See [[git-annex-diffdriver]](1) for details.
+* `smudge`, `clean`
+
+ These let git-annex be used as a git filter driver.
+
+ See [[git-annex-smudge]](1) and [[git-annex-clean]](1) for details.
+
* `remotedaemon`
Detects when network remotes have received git pushes and fetches from them.
the annex. Other files are passed through the smudge/clean as-is and
have their contents stored in git.
-* annex.direct is repurposed to configure how the assistant adds files.
- When set to true, they're added unlocked.
+* annex.direct is repurposed to configure how git-annex adds files.
+ When set to false, it adds symlinks and when true it adds pointer files.
git-annex clean: