I need to attach custom metadata to my source files that at tracked via Mercurial. The svn properties commands are exactly what I need.
Is there a mercurial extension that provides commands similar to propset
, propget
, propdel
, etc?
If there isn't an extension, why not?
Is there an alternative/better approach for custom metadata when using Mercurial?
Is custom metadata not useful to anyone else?
Is the extension dearly desired but just not written yet?
extra info: If it helps. The metadata I'm tracking is whether each file has been codereviewed, unittested, qa'd, etc. This data needs to be traceable and merges between branches/clones aren't fine grained enough.
Mercurial's philosophy is that you track files and only files. You can't even check in an empty folder because Mercurial doesn't know about folders!
So, here are the answers:
I can't find any extension that does what you want. (You can write your own of course.)
The Mercurialful way to do what you want is to store the data in a flat file and use some scripts to process it. :(
It sounds like you've got a pretty well thought out system in place and good engineering practice at your company so I won't be pedantic here about it, but one can make a reasonable argument that your method does nothing except hurt portability. There's nothing magical about properties, I would just run an svn proplist -v .
on your tree, dump that to hidden files -- something like .tracking
-- just explicitly merge it along with your normal files. This doesn't really add any work since you have to merge properties anyway.
I hope that works for you!