git-annex/Annex
Joey Hess 4a788fbb3b
sync --content now supports --hide-missing adjusted branches
This relies on git ls-files --with-tree, which I'm using in a way that
its man page does not document. Hm. I emailed the git list to try to get
the docs improved, but at least the git test suite does test the same
kind of use case I'm using here.

Performance impact when not in an adjusted branch is limited to some
additional MVar accesses, and a single git call to determine the name of
the current branch. So very minimal.

When in an adjusted branch, the performance impact is
in Annex.WorkTree.lookupFile, which starts doing an equal amount of work
for files that didn't exist as it already did for files that were
unlocked.

This commit was sponsored by Jochen Bartl on Patreon.
2018-10-19 17:51:25 -04:00
..
AdjustedBranch refactor getCurrentBranch 2018-10-19 17:29:18 -04:00
Branch fix build with older ghc 2018-09-12 14:10:08 -04:00
Content optimisation: avoid stat call 2018-09-05 17:26:12 -04:00
LockPool enable LambdaCase and convert around 10% of places that could use it 2017-11-15 16:59:32 -04:00
MetaData fix thinko for the second time 2018-04-09 13:10:44 -04:00
View remove 163 lines of code without changing anything except imports 2016-01-20 16:36:33 -04:00
Action.hs finally really add back custom-setup stanza 2017-12-31 16:36:39 -04:00
AdjustedBranch.hs refactor getCurrentBranch 2018-10-19 17:29:18 -04:00
AutoMerge.hs rename BlobType and add submodule to it 2018-05-14 14:45:41 -04:00
BloomFilter.hs Another redundant constraint 2016-01-28 12:34:07 -04:00
Branch.hs Fix git-annex branch data loss that could occur after git-annex forget --drop-dead 2018-08-06 17:36:30 -04:00
BranchState.hs remove 163 lines of code without changing anything except imports 2016-01-20 16:36:33 -04:00
CatFile.hs sync --content now supports --hide-missing adjusted branches 2018-10-19 17:51:25 -04:00
ChangedRefs.hs enable LambdaCase and convert around 10% of places that could use it 2017-11-15 16:59:32 -04:00
CheckAttr.hs annex.largefiles can be configured in .gitattributes too 2016-02-02 15:18:17 -04:00
CheckIgnore.hs remove 163 lines of code without changing anything except imports 2016-01-20 16:36:33 -04:00
Common.hs finally really add back custom-setup stanza 2017-12-31 16:36:39 -04:00
Concurrent.hs fix git command queue to be concurrency safe 2018-08-28 13:16:33 -04:00
Content.hs v6: Fix database inconsistency 2018-10-16 13:51:37 -04:00
CurrentBranch.hs refactor getCurrentBranch 2018-10-19 17:29:18 -04:00
Difference.hs remove 163 lines of code without changing anything except imports 2016-01-20 16:36:33 -04:00
Direct.hs avoid update-index race 2018-08-17 16:03:40 -04:00
DirHashes.hs stop using MissingH for MD5 2017-05-15 21:36:03 -04:00
Drop.hs avoid sync/assistant drop from appendonly 2018-08-30 11:23:57 -04:00
Environment.hs removed the old Android app 2018-10-13 01:41:11 -04:00
Export.hs centralized "yes"/"no" parsing 2018-10-10 11:14:27 -04:00
FileMatcher.hs v6: avoid accidental conversion when annex.largefiles is not configured 2018-08-27 14:51:10 -04:00
Fixup.hs fix android/old ghc build 2018-07-19 13:27:29 -04:00
GitOverlay.hs removed the old Android app 2018-10-13 01:41:11 -04:00
HashObject.hs Sped up git-annex add in direct mode and v6 by using git hash-object --batch. 2016-03-14 15:58:46 -04:00
Hook.hs removed the old Android app 2018-10-13 01:41:11 -04:00
Ingest.hs refactor getCurrentBranch 2018-10-19 17:29:18 -04:00
Init.hs run git status before enabling clean filter 2018-08-28 10:36:22 -04:00
InodeSentinal.hs remove 163 lines of code without changing anything except imports 2016-01-20 16:36:33 -04:00
Journal.hs back out incorrect IO interleaving change 2018-05-08 13:54:42 -04:00
Link.hs avoid update-index race 2018-08-17 16:03:40 -04:00
Locations.hs avoid running reconcileStaged when the index has not changed 2018-08-22 13:04:12 -04:00
LockFile.hs Ssh password prompting improved when using -J 2017-05-11 17:36:03 -04:00
LockPool.hs pid locking configuration and abstraction layer for git-annex 2015-11-12 17:50:34 -04:00
MakeRepo.hs added annex.commitmessage 2018-08-02 14:06:06 -04:00
MetaData.hs don't copy old date metadata when adding new version of a file 2018-04-04 13:58:16 -04:00
Multicast.hs fix build with old ghc 2017-05-10 14:39:15 -04:00
Notification.hs reorg 2017-12-14 11:26:59 -04:00
NumCopies.hs removed the old Android app 2018-10-13 01:41:11 -04:00
Path.hs remove ifdef for older base than git-annex.cabal allows 2017-12-14 13:45:50 -04:00
Perms.hs avoid compiler warning 2018-03-15 13:21:32 -04:00
Queue.hs fix git command queue to be concurrency safe 2018-08-28 13:16:33 -04:00
ReplaceFile.hs narrow the race where a file gets modified before update-index 2018-08-16 15:56:43 -04:00
SpecialRemote.hs finish fixing inverted Ord for TrustLevel 2018-04-13 15:17:54 -04:00
Ssh.hs remove no longer needed uuid check in prepSocket 2018-06-05 12:51:17 -04:00
TaggedPush.hs sync: Added --cleanup, which removes local and remote synced/ branches. 2017-09-28 14:58:48 -04:00
Transfer.hs Fix wrong sorting of remotes when using -J 2018-08-03 13:10:50 -04:00
UpdateInstead.hs sync hack to make updateInstead work on eg FAT 2017-02-17 15:21:52 -04:00
Url.hs Fix reversion in support of annex.web-options 2018-10-04 13:43:29 -04:00
UUID.hs adeiu, MissingH 2017-05-16 01:03:52 -04:00
VariantFile.hs stop using MissingH for MD5 2017-05-15 21:36:03 -04:00
VectorClock.hs avoid accidental Show of VectorClock 2017-08-14 14:51:54 -04:00
Version.hs Support using v3 repositories without upgrading them to v5. 2016-10-05 16:53:09 -04:00
View.hs reuse hashes of dotfiles/dirs/submodules when entering view 2018-05-14 15:35:20 -04:00
Wanted.hs remove 163 lines of code without changing anything except imports 2016-01-20 16:36:33 -04:00
WorkTree.hs sync --content now supports --hide-missing adjusted branches 2018-10-19 17:51:25 -04:00
YoutubeDl.hs improve message 2018-09-02 16:08:00 -04:00