don't frontload reconcileStaged in git-annex init
authorJoey Hess <joeyh@joeyh.name>
Fri, 18 Nov 2022 17:58:35 +0000 (13:58 -0400)
committerJoey Hess <joeyh@joeyh.name>
Fri, 18 Nov 2022 17:58:47 +0000 (13:58 -0400)
commit2b014f1a8b6ca5501c7e9ea957ffc7bda1fc2e33
tree8e8077d44a47976d2e73a33971d3830bd3556cb2
parentc834d2025a4a3defbd650c33feb1c81092ebdd90
don't frontload reconcileStaged in git-annex init

init: Avoid scanning for annexed files, which can be lengthy in a
large repository. Instead that scan is done on demand. This lets git-annex
init be run and some query commands be used in a repository without
waiting.

Note that autoinit already behaved this way, so while this will mean some
commands like git-annex get/unlock/add will do the scan the first time run,
that is not really a significant behavior change.

And, it's really better to have a consistent behavior. The reason for
the inconsistency was a strange bug discussed in
b3c4579c7907147a496bdf2c73b42238d8b239d6. Avoiding reconcileStaged in
init will keep avoiding whatever that was.

Sponsored-by: Dartmouth College's DANDI project
Annex/Init.hs
Assistant/MakeRepo.hs
CHANGELOG
Command/ConfigList.hs
Command/Init.hs
Command/Reinit.hs
Command/Upgrade.hs
doc/bugs/performance_regression__63___init_takes_times_more/comment_14_8c3b13806adb731435b346a64990527b._comment