summaryrefslogtreecommitdiff
path: root/GitAnnex
diff options
context:
space:
mode:
authorGravatar Joey Hess <joey@kitenet.net>2013-08-20 15:46:35 -0400
committerGravatar Joey Hess <joey@kitenet.net>2013-08-20 15:46:35 -0400
commit856f2f21c654ac9ac87554b9bb0e59b4ba595b10 (patch)
treeacc1557ab3f4e2fed27ea97e2e29c65f3e48b423 /GitAnnex
parentda79efe0dfa97f3cb9e983e54cd1541695b5a39a (diff)
mirror: New command, makes two repositories contain the same set of files.
This is a simple approach for setting up a mirroring repository. It will work with any type of remotes. Mirror --from is more expensive than mirror --to in general. OTOH, mirror --from will get the file from any remote that has it, not only the named mirror remote. And if the named mirror remote is not the fastest available remote with a file, that can speed things up. It would be possible to make the assistant or watch command do a more dynamic mirroring, that didn't need to scan every time.
Diffstat (limited to 'GitAnnex')
-rw-r--r--GitAnnex/Options.hs9
1 files changed, 9 insertions, 0 deletions
diff --git a/GitAnnex/Options.hs b/GitAnnex/Options.hs
index 2cfdfafd2..459ee3bf4 100644
--- a/GitAnnex/Options.hs
+++ b/GitAnnex/Options.hs
@@ -65,3 +65,12 @@ keyOptions =
, Option ['U'] ["unused"] (NoArg (Annex.setFlag "unused"))
"operate on files found by last run of git-annex unused"
]
+
+fromOption :: Option
+fromOption = Option.field ['f'] "from" paramRemote "source remote"
+
+toOption :: Option
+toOption = Option.field ['t'] "to" paramRemote "destination remote"
+
+fromToOptions :: [Option]
+fromToOptions = [fromOption, toOption]