git-annex/Types
Joey Hess 4acbb40112
git-annex config annex.largefiles
annex.largefiles can be configured by git-annex config, to more easily set
a default that will also be used by clones, without needing to shoehorn the
expression into the gitattributes file. The git config and gitattributes
override that.

Whenever something is added to git-annex config, we have to consider what
happens if a user puts a purposfully bad value in there. Or, if a new
git-annex adds some new value that an old git-annex can't parse.
In this case, a global annex.largefiles that can't be parsed currently
makes an error be thrown. That might not be ideal, but the gitattribute
behaves the same, and is almost equally repo-global.

Performance notes:

git-annex add and addurl construct a matcher once
and uses it for every file, so the added time penalty for reading the global
config log is minor. If the gitattributes annex.largefiles were deprecated,
git-annex add would get around 2% faster (excluding hashing), because
looking that up for each file is not fast. So this new way of setting
it is progress toward speeding up add.

git-annex smudge does need to load the log every time. As well as checking
the git attribute. Not ideal. Setting annex.gitaddtoannex=false avoids
both overheads.
2019-12-20 13:01:41 -04:00
..
ActionItem.hs wip RawFilePath 2x git-annex find speedup 2019-11-26 16:01:58 -04:00
AdjustedBranch.hs adjust --lock: This enters an adjusted branch where files are locked. 2019-09-27 14:23:25 -04:00
Availability.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
Backend.hs plumb MeterUpdate into getKey 2019-06-25 11:43:24 -04:00
Benchmark.hs benchmark: Add --databases to benchmark sqlite databases 2019-10-29 16:59:27 -04:00
BranchState.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
CleanupActions.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
Command.hs make WorkerStage an open type 2019-06-19 13:05:03 -04:00
Concurrency.hs run download checksum verification in separate job pool 2019-06-17 14:58:02 -04:00
Creds.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
Crypto.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
DeferredParse.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
DesktopNotify.hs remove many old version ifdefs 2019-07-05 15:09:37 -04:00
Difference.hs include git-annex-shell back in 2019-12-02 11:51:52 -04:00
Distribution.hs cache the serialization of a Key 2019-11-22 17:49:16 -04:00
Export.hs wip RawFilePath 2019-11-25 16:18:19 -04:00
FileMatcher.hs convert TopFilePath to use RawFilePath 2019-12-09 15:07:21 -04:00
GitConfig.hs git-annex config annex.largefiles 2019-12-20 13:01:41 -04:00
Group.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
Import.hs wip RawFilePath 2019-11-25 16:18:19 -04:00
Key.hs wip RawFilePath 2x git-annex find speedup 2019-11-26 16:01:58 -04:00
KeySource.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
LockCache.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
Messages.hs get rid of implicitMessages state 2019-06-12 14:01:41 -04:00
MetaData.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
Mime.hs Added mimeencoding= term to annex.largefiles expressions. 2019-04-30 12:17:22 -04:00
NumCopies.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
RefSpec.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
Remote.hs add RemoteStateHandle 2019-10-14 13:51:42 -04:00
RemoteState.hs add RemoteStateHandle 2019-10-14 13:51:42 -04:00
RepoVersion.hs v7 2018-10-25 18:24:23 -04:00
ScheduledActivity.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
StandardGroups.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
StoreRetrieve.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
Test.hs remove many old version ifdefs 2019-07-05 15:09:37 -04:00
Transfer.hs wip RawFilePath 2x git-annex find speedup 2019-11-26 16:01:58 -04:00
TrustLevel.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
UrlContents.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
UUID.hs all commands building except for assistant 2019-12-05 14:41:18 -04:00
View.hs update licenses from GPL to AGPL 2019-03-13 15:48:14 -04:00
WorkerPool.hs Fix a crash (STM deadlock) when -J is used with multiple files that point to the same key 2019-11-14 13:51:09 -04:00