Today my time invested in making #annextimelog payed off for the first time in a real-life situation: I could add new time tracking data from my phone without reception or network (so no upfront syncing). A later sync had no conflicts, even though I had added other stuff from my laptop and the repos were diverged. With #timewarrior or #timeclock this always led to very annoying merge conflicts, effectively enforcing a only-do-stuff-when-online-and-synced workflow (inacceptable).
In #annextimelog, #gitAnnex takes care of resolving merge conflicts so you don't have to.
I wanted to try how feasible git annex is as a storage backend for data that is not necessarily just files. And with its versatile metadata model, it is surprisingly well suited for other stuff as well.
But yeah, *all* first reactions to #annextimelog's approach were more or less 'WHY tf git annex for this!?'
I will however proceed to #gitAnnexAllTheThings and see how far I get
If you think about it, many applications could use (some of) the following:
- syncability (between devices, for backups, etc.)
- ability to store small data (=annex metadata)
- ability to store big data (=annexed files)
- version control/tracking changes (=git)
- work offline because data (can be or is) stored on-device
#gitAnnex checks those boxes and it already exists - so why reinvent the wheel It won't win any performance prices though for all use cases...