git-annex/Annex
Joey Hess 568af1073e
filter exported tree through remote's preferred content setting
The filtering is fairly efficient as far as building the trees goes,
since it reuses adjustTree. But it still needs to traverse the whole
tree, and look up the keys used by every file.

The tree that gets recorded to export.log is the filtered tree.
This way resumes of interrupted sync to an export uses it without
needing to recalculate it. And, a change to the preferred content
settings of the remote will result in a different tree, so the export
will be updated accordingly.

The original tree is still used in the remote tracking branch.
That branch represents the special remote as a git remote, and if it
were a normal git remote, the tree in its head would not be affected by
preferred content.
2019-05-20 11:54:55 -04:00
..
AdjustedBranch refactor getCurrentBranch 2018-10-19 17:29:18 -04:00
Branch update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
Content update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
LockPool update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
MetaData update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
View update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
Action.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
AdjustedBranch.hs misctmp cleanup 2019-01-17 16:02:22 -04:00
AutoMerge.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
BloomFilter.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
Branch.hs avoid stageJournal escaping withOtherTmp 2019-05-07 11:57:12 -04:00
BranchState.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
CatFile.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
ChangedRefs.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
CheckAttr.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
CheckIgnore.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
Common.hs finally really add back custom-setup stanza 2017-12-31 16:36:39 -04:00
Concurrent.hs Improved locking when multiple git-annex processes are writing to the .git/index file 2019-05-06 15:15:12 -04:00
Content.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
CurrentBranch.hs refactor getCurrentBranch 2018-10-19 17:29:18 -04:00
Difference.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
Direct.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
DirHashes.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
Drop.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
Environment.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
Export.hs improve messages around export/import conflicts 2019-04-09 13:03:59 -04:00
FileMatcher.hs filter exported tree through remote's preferred content setting 2019-05-20 11:54:55 -04:00
Fixup.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
GitOverlay.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
HashObject.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
Hook.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
Import.hs fix setting imported tree 2019-05-06 14:38:02 -04:00
Ingest.hs avoid ingest lockdown file escaping the withOtherTmp call 2019-05-07 13:04:57 -04:00
Init.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
InodeSentinal.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
Journal.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
Link.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
Locations.hs avoid ingest lockdown file escaping the withOtherTmp call 2019-05-07 13:04:57 -04:00
LockFile.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
LockPool.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
Magic.hs fix windows build 2019-05-03 10:58:34 -04:00
MakeRepo.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
MetaData.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
Multicast.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
Notification.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
NumCopies.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
Path.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
Perms.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
Queue.hs Improved locking when multiple git-annex processes are writing to the .git/index file 2019-05-06 15:15:12 -04:00
RemoteTrackingBranch.hs fix setting imported tree 2019-05-06 14:38:02 -04:00
ReplaceFile.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
SpecialRemote.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
Ssh.hs annex.jobs=cpus etc 2019-05-10 13:27:08 -04:00
TaggedPush.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
Tmp.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
Transfer.hs annex.jobs=cpus etc 2019-05-10 13:27:08 -04:00
UpdateInstead.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
Url.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
UUID.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
VariantFile.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
VectorClock.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
Version.hs fix init in cripped filesystem version issues 2018-12-03 12:57:23 -04:00
View.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
Wanted.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
WorkTree.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
YoutubeDl.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00