aboutsummaryrefslogtreecommitdiff
path: root/doc/git-annex-reinject.mdwn
diff options
context:
space:
mode:
authorGravatar Joey Hess <joeyh@joeyh.name>2016-04-22 13:49:32 -0400
committerGravatar Joey Hess <joeyh@joeyh.name>2016-04-22 13:49:32 -0400
commitb48a044d26bb607da9962b9086e9da2db9e11620 (patch)
tree0a5b94be74befcbf51431ea4a0d7da31cbdcf357 /doc/git-annex-reinject.mdwn
parent475f9475f162c1c1f9aee727fa3f3a471ebe2506 (diff)
reinject: Added new mode which can reinject known files into the annex.
For example: git-annex reinject --known /mnt/backup/*
Diffstat (limited to 'doc/git-annex-reinject.mdwn')
-rw-r--r--doc/git-annex-reinject.mdwn48
1 files changed, 39 insertions, 9 deletions
diff --git a/doc/git-annex-reinject.mdwn b/doc/git-annex-reinject.mdwn
index fb175015b..e280a129b 100644
--- a/doc/git-annex-reinject.mdwn
+++ b/doc/git-annex-reinject.mdwn
@@ -1,32 +1,62 @@
# NAME
-git-annex reinject - sets content of annexed file
+git-annex reinject - inject content of file back into annex
# SYNOPSIS
-git annex reinject `src dest`
+git annex reinject `[src dest]`
+
+git annex reinject --known `[src]`
# DESCRIPTION
-Moves the src file into the annex as the content of the dest file,
-which should be an already annexed file whose content is not present.
+Moves the content of the src file or files into the annex.
+Only known file contents will be reinjected. Any unknown src files will
+be left unchanged.
This can be useful if you have obtained the content of a file from
-elsewhere and want to put it in the local annex.
-
-Verifies that the src file's content matches with the content that the dest
-file is expected to have, and refuses to reinject it otherwise.
+elsewhere and want to put it in the local annex. For example, if a file's
+content has been lost and you have a backup, you can restore the backup and
+reinject it into your local repository.
-Example:
+There are two ways to use this command. Specifying a src file and the name
+of a dest file (located inside the repository's working tree)
+injects the src file as the content of the dest file.
git annex reinject /tmp/foo.iso foo.iso
+Or the `--known` option can be used to reinject all known src files, without
+needing to specify the dest file.
+
+ git annex reinject --known /tmp/*.iso
+
+# OPTIONS
+
+* `--known`
+
+ With this option, each specified src file is hashed using the default
+ key-value backend (or the one specified with `--backend`), and if git-annex
+ has a record of the file having been in the annex before, the content is
+ reinjected.
+
+ Note that this will reinject old versions of files that have been
+ modified or deleted from the current git branch.
+ Use [[git-annex-unused]](1) to detect when such old and potentially
+ unused files have been reinjected.
+
+* `--backend`
+
+ Specify the key-value backend to use when checking if a file is known
+ with the `--known` option.
+
# SEE ALSO
[[git-annex]](1)
[[git-annex-add]](1)
+[[git-annex-unused]](1)
+
[[git-annex-fsck]](1)
# AUTHOR