git-annex/Types
Joey Hess 3159da2693 Add and use numcopiesneeded preferred content expression.
* Add numcopiesneeded preferred content expression.
* Client, transfer, incremental backup, and archive repositories
  now want to get content that does not yet have enough copies.

This means the asssistant will make copies of files that don't yet
meet the configured numcopies, even to places that would not normally want
the file.

For example, if numcopies is 4, and there are 2 client repos and
2 transfer repos, and 2 removable backup drives, the file will be sent
to both transfer repos in order to make 4 copies. Once a removable drive
get a copy of the file, it will be dropped from one transfer repo or the
other (but not both).

Another example, numcopies is 3 and there is a client that has a backup
removable drive and two small archive repos. Normally once one of the small
archives has a file, it will not be put into the other one. But, to satisfy
numcopies, the assistant will duplicate it into the other small archive
too, if the backup repo is not available to receive the file.

I notice that these examples are fairly unlikely setups .. the old behavior
was not too bad, but it's nice to finally have it really correct.

.. Almost. I have skipped checking the annex.numcopies .gitattributes
out of fear it will be too slow.

This commit was sponsored by Florian Schlegel.
2014-01-20 17:35:29 -04:00
..
Availability.hs add GETAVAILABILITY to external special remote protocol 2014-01-13 14:41:10 -04:00
Backend.hs handle sha*sum's leading \ in checksum with certian unsual filenames 2012-12-20 17:07:10 -04:00
BranchState.hs remove unused fields 2012-12-19 23:41:54 -04:00
Command.hs fix inversion of control in CommandSeek (no behavior changes) 2014-01-20 04:57:36 -04:00
Crypto.hs partially complete gcrypt remote (local send done; rest not) 2013-09-07 18:38:00 -04:00
Distribution.hs annex.autoupgrade setting 2013-11-22 16:04:20 -04:00
FileMatcher.hs improve matcher data type to allow matching Keys, instead of just files (no behavior changes) 2014-01-18 14:51:55 -04:00
GitConfig.hs global numcopies setting 2014-01-20 16:47:56 -04:00
Group.hs add --ingroup limit 2012-10-08 15:18:58 -04:00
Key.hs file2key should return Nothing if the backend is empty 2013-11-11 15:41:31 -04:00
KeySource.hs add: Improved detection of files that are modified while being added. 2013-02-14 16:54:36 -04:00
Limit.hs improve matcher data type to allow matching Keys, instead of just files (no behavior changes) 2014-01-18 14:51:55 -04:00
Messages.hs Display a warning when a non-existing file or directory is specified. 2012-11-25 17:54:08 -04:00
Option.hs per-command options 2012-01-05 23:11:07 -04:00
Remote.hs add GETAVAILABILITY to external special remote protocol 2014-01-13 14:41:10 -04:00
ScheduledActivity.hs cronner: run jobs triggered by remotes becoming connected (untested) 2013-10-13 17:14:56 -04:00
StandardGroups.hs Add and use numcopiesneeded preferred content expression. 2014-01-20 17:35:29 -04:00
TrustLevel.hs note 2013-09-20 00:04:37 -04:00
UUID.hs add ConfigMonitor thread 2012-10-20 16:43:35 -04:00