On Sun, Aug 12, 2012 at 11:23:18AM -1000, Joel Roth wrote: > If we're using git for everything > else, how would we do this? > > While wondering if it might not be overkill > I started to think that we could > have another directory "$project_dir/shadow", managed by git, > with hard links PeripheralState.json > and State.json. That would guarantee being > able to get back to a previous state, > protecting against corrupting the PeripheralState.json, > > This would give you a potential mechanism to wind back *all* > system state, and would assure you could return to a precise > system state. So you would have the main directory, with commits made only when State.json changes, and you would have the shadow directory where everything is committed: is that correct? How about git-adding PeripheralState.json on every change but committing it only on user saves, tags, and quits? Not as robust as your idea, IIUC, but perhaps a little faster than committing twice for every operation? Cheers, S.M.