I would like to mod an open source project held in SVN.
I would like to use Mercurial to hold my mod in version control. (The reason for Mercurial is that I would like to keep track of changesets so that I can split up the mod into components – this is necessary for working with the OpenCart project for example as it doesn’t support extensions well).
When the open source project is updated I would like to merge the changes with my mod.
It would be ideal if the original project was held in DVCS as I could just fork the project and work from there but alas, SVN’s familiarity is keeping its usage strong and this is fixed.
So my question is, what is the ideal workflow for this scenario and how do I implement it?
There is no “ideal” workflow when you change:
I believe the usual workflow in this case would involve patches:
This is illustrated in part in the Mercurial page “Working with Subversion Repositories“.