Could we perhaps add the required features to SVN? Maybe for the project?All I would need would be the ability to keep my own patches separated from the main tree locally.
So checking out or updating the sources would perform the operation on two trees, exp and trunk.
It would then be up to me to make my patches compatible in exp so they can ultimately be applied to trunk.
Trunk, at all times, would mirror the official revisions, exp would be my own contributions.
This is how I currently handle it, except I have to duplicate the trees manually, and nothing informs me that my patches are being affected. SVN modifications to keep two trees and to track changes on the local exp branch and take note when upstream changes may affect my patches should be all that is needed to keep un-applied patches synchronized - provided the maintainer of those patches chooses to actually maintain them.
This keeps the burden on the contributor and makes it much easier for them to stay in sync.
This is almost impossible right now, with my exp branch holding my changes, and me needing to pull out my patches, clone the trunk, re-apply my patches, and then test that nothing is broken.
What do y'all think? --The loon