More commands work in direct mode repositories: find, whereis, move, copy, drop, log.

These started working, for free, once lookupFile supported direct mode.

yay!!
This commit is contained in:
Joey Hess 2013-01-05 17:16:58 -04:00
parent 1c83b6c439
commit b68eee625f
9 changed files with 15 additions and 16 deletions

View file

@ -14,9 +14,8 @@ import qualified Remote
import Annex.Wanted
def :: [Command]
def = [notDirect $
withOptions Command.Move.options $ command "copy" paramPaths seek
"copy content of files to/from another repository"]
def = [withOptions Command.Move.options $ command "copy" paramPaths seek
"copy content of files to/from another repository"]
seek :: [CommandSeek]
seek = [withField Command.Move.toOption Remote.byName $ \to ->

View file

@ -20,7 +20,7 @@ import qualified Option
import Annex.Wanted
def :: [Command]
def = [notDirect $ withOptions [fromOption] $ command "drop" paramPaths seek
def = [withOptions [fromOption] $ command "drop" paramPaths seek
"indicate content of files not currently wanted"]
fromOption :: Option

View file

@ -20,7 +20,7 @@ import Types.Key
import qualified Option
def :: [Command]
def = [notDirect $ noCommit $ withOptions [formatOption, print0Option] $
def = [noCommit $ withOptions [formatOption, print0Option] $
command "find" paramPaths seek "lists available files"]
formatOption :: Option

View file

@ -36,7 +36,7 @@ data RefChange = RefChange
type Outputter = Bool -> POSIXTime -> [UUID] -> Annex ()
def :: [Command]
def = [notDirect $ withOptions options $
def = [withOptions options $
command "log" paramPaths seek "shows location log"]
options :: [Option]

View file

@ -19,7 +19,7 @@ import Logs.Presence
import Logs.Transfer
def :: [Command]
def = [notDirect $ withOptions options $ command "move" paramPaths seek
def = [withOptions options $ command "move" paramPaths seek
"move content of files to/from another repository"]
fromOption :: Option

View file

@ -15,7 +15,7 @@ import Remote
import Logs.Trust
def :: [Command]
def = [notDirect $ noCommit $ command "whereis" paramPaths seek
def = [noCommit $ command "whereis" paramPaths seek
"lists repositories that have file content"]
seek :: [CommandSeek]

2
debian/changelog vendored
View file

@ -3,6 +3,8 @@ git-annex (3.20130105) UNRELEASED; urgency=low
* webapp: Add UI to stop and restart assistant.
* committer: Fix a file handle leak.
* assistant: Make expensive transfer scan work fully in direct mode.
* More commands work in direct mode repositories: find, whereis, move, copy,
drop, log.
-- Joey Hess <joeyh@debian.org> Thu, 03 Jan 2013 14:58:45 -0400

View file

@ -41,11 +41,9 @@ Otherwise, the main command that's used in direct mode repositories is
`git annex sync`. This automatically adds new files, commits all
changed files to git, pushes them out, pulls down any changes, etc.
You can also run `git annex get` to transfer the content of files into your
direct mode repository. Or if the direct mode repository is a remote of
some other, regular git-annex repository, you can use commands in the other
repository like `git annex copy` and `git annex move` to transfer the
contents of files to the direct mode repository.
`git annex add` and some other commands are not yet supported in direct
mode repositories. Feel free to try any git annex command though; ones that
don't support direct mode will refuse to do anything.
You can use `git commit --staged`. (But not `git commit -a` .. It'll commit
whole large files into git!)

View file

@ -269,9 +269,9 @@ subdirectories).
* direct
Switches a repository to use direct mode, where rather than symlinks to
files, the files are directly present in the repository. Note that many git
and git-annex commands will not work in direct mode; you're mostly
limited to using "git annex sync" and "git annex get".
files, the files are directly present in the repository. Note that most git
commands and some git-annex commands will not work in direct mode; you're
mostly limited to using "git annex sync" and "git annex get".
As part of the switch to direct mode, any changed files will be committed.