Yesterday I set beets up to import my complete library without doing any matching against musicbrainz, acoustid etc, thinking I’d first get the inventory populated and then incrementally turn things on and run analysis as I need them and also incorporate new albums by having Beets scan the same library picking up only additions / deletions and modifying its database accordingly when the need arises.
My config.yaml looked like this at time of import (assume correct spacing which Discourse removes):
directory: /mnt/alib/
library: /home/x/beetsdb/beetsdb.blb
import:
copy: no
write: noplugins: chroma duplicates
chroma:
auto: noduplicates:
album: yes
Import was run using:
beet import -A /alib
This morning I added a few albums and looking for the option to rescan looking for changes I noticed there’s no option to do so, only reference to incremental as follows:
If you want to import only the new stuff from a directory, use the
-i
option to run an incremental import. With this flag, beets will keep track of every directory it ever imports and avoid importing them again. This is useful if you have an “incoming” directory that you periodically add things to. To get this to work correctly, you’ll need to use an incremental import every time you run an import on the directory in question—including the first time, when no subdirectories will be skipped. So consider enabling theincremental
configuration option.
I wish I’d known about the need to “use an incremental import every time you run an import on the directory in question — including the first time” - it took near on 24 hours to import my library without doing any matching.
In any event, given my import options I’m assuming beets hasn’t skipped any subdirectories in its initial import? To see whether there are any changes to what’s written to the beets database with the incremental directive on or off using the configuration and import command as shown above I renamed my database and reran the import with and without -i, but pointed to a folder with two subdirectories. Looking at the two databases I don’t see any difference in what beets has written with and without the -i directive.
Before I invest further time updating my initial database I have three questions:
- are my assumptions sound regarding the above-mentioned configuration and import options not being affected by the -i directive being present or absent?
- how do I then get beets to rescan the library adding only new directories and deleting any that may no longer exist?
- how does beets handle pruned and/or grafted subdirectories (representing albums) that have been moved around or deleted within the directory structure?