On 5/7/08, Nicolas Pitre <nico@xxxxxxx> wrote: > On Wed, 7 May 2008, David Kastrup wrote: > > Hi, I have some large git repositories on a USB drive (ext3 file > > system). That means that when replugging the drive, the recorded st_dev > > data in the index is off, meaning that the whole repo directory > > structure gets reread as the stat data of all directories has changed. > > > > That's a nuisance. Can't we have some heuristic or configuration option > > where we, say, record the st_dev of the _index_ file, and if that has > > changed, we propagate that change to the st_dev of its contents? I'd > > like to see something that works more efficiently than rescanning the > > whole disk every time I hibernate my computer. > > Maybe simply ignoring st_dev is the solution? I hardly can see what > value it had to the other stat fields. If I understand correctly, you can be sure a file hasn't changed if it has exactly the same (dev,inode,ctime,length) attributes. If you don't track the dev, you can't be certain whether file attributes look identical but it was actually on another disk, and therefore might have different content after all. It's obviously a pretty rare case, but nobody likes a version control system that works properly "almost" all the time :) Have fun, Avery -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html