Your version control system already describes precisely the modifications that are meaningful: those that involve the articles' content. Arbitrary file system activity such as cloning a repository or synchronizing data between computers is irrelevant.
To tap into this more reliable data source, I've created a Middleman extension that provides an
mtime attribute on each article. Behind the scenes it queries the version control system to find the last recorded change to the article's content.
With the extension in place, the
atom:updated element for each article can be written as:
and for the entire feed as:
The extension is modular with respect to version control systems. I've implemented support for Git and a plain file system fallback.