Is it possible to create streamlined workflow using both VCS (preferably SVN) and DVCS (preferably Mercurial or Git)?
Following facts describe desired workflow:
- There is one central VCS server.
- Main development happens on central server.
- Anyone outside core development team (let's name him Joe) could take a snapshot of source code with complete history.
- Joe would like to develop a feature in his own branch.
- Joe doesn't have write permission to VCS, so
- He's developing locally and committing to his own DVCS repo.
- When he's finished he contacts main repo admin to merge his work into central.
And here comes the tricky part: Can his work be merged into central repo preserving it's history? So that the main development team could track Joe's individual commits?
I'd like to learn anything, that could point me in the right direction. If the workflow is not impossible to implement than feel free to throw a link to a tutorial. If you already have any experience with VCS-DVCS workflow than please share it. If it's not possible to implement it than the information why is also of great value to me.
I'm aware that the question may seem similar to others (such as vcs or dvcs workflow), but I couldn't find any clues whether or not the history is preserved.