Article ID Journal Published Year Pages File Type
4945117 Information Systems 2017 16 Pages PDF
Abstract
Version control systems are used widely for tracking edits to data files, especially when working in teams with simultaneous editors. They track who made edits and when, and provide tools for comparing changes made and for resolving conflicts when the same file is edited by two people. Attaching metadata to files which stays with the data and tracking changes can be difficult if the file format does not support it. In this paper we present a new and innovative architecture for recording key-value metadata for objects in a revision control system, specifically Git. The utility and maturity of version control system tools make them a good candidate for a metadata store. We take advantage of Git's data store to permit the values to be blobs, opening up other possibilities such as defining thumbnails for files and folders. Propagation rules are presented, detailing when metadata follows a file after modifications to the repository. A prototype version of a tool is presented and the usefulness of the architecture is demonstrated with a number of examples. Adapting the approach to other systems such as Mercurial and Subversion is also discussed.
Related Topics
Physical Sciences and Engineering Computer Science Artificial Intelligence
Authors
, , ,