git-annex/Annex
Joey Hess 234842a347
v7
Install new git hooks in this version.

This does beg the question of what to do if git later gets eg a
post-smudge hook, that could run git-annex smudge --update. I think the
thing to do in that case would be to make git-annex smudge --update
install the new hooks. That way, as the user uses git-annex, the hook
would be created pretty quickly and without needing any extra syscalls
except for when git-annex smudge --update is called.

I considered doing something like that for installation of the
post-checkout and post-merge hooks, which would have avoided the need
for v7. But the only place it was cheap to do it would be in git-annex smudge
which could cheaply notice that smudge.log didn't exist yet and so know
the hooks needed to be installed. But since smudge used to populate pointer
files, it would be quite surprising if a single git checkout/merge failed
to update the work tree, and so that idea didn't work out.

The other reason for v7 is psychological -- users don't need to worry
about whether they might be running an old version of git-annex that
doesn't support their v7 repository very well. And bug reports about
"v6" have gotten a bit of a bad association in my head since they often
hit one of the known limitations and didn't realize it was experimental.

newtyped RepoVersion Int to avoid needing 2 comparisons in
versionSupportsUnlockedPointers etc. Also it's just nicer.

This commit was sponsored by John Pellman on Patreon.
2018-10-25 18:24:23 -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 fix strange test failure 2018-10-22 16:51:09 -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 optimize smudge --clean of unmodified file 2018-10-25 16:46:46 -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 git post-checkout and post-merge hooks 2018-10-25 15:59:51 -04:00
Ingest.hs remove unused import 2018-10-25 16:25:21 -04:00
Init.hs v7 2018-10-25 18:24:23 -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 defer updating unlocked files until after smudge filter 2018-10-25 15:08:20 -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 v7 2018-10-25 18:24:23 -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