I'm not sure if I understand you correctly, Kris. As far as I know, current JBPM 5 implementation allows you to deploy processes from file system alone (yes, I know Guvnor integration is in the works). So, when you overwrite the old bpmn process file with a new version, you basically lose the previous version of the diagram. How the JBPM engine actually manages to "remember" old process definition? I haven't seen anything in the persistent storage (database).
Or is my assumption wrong and you have to deploy a new version of the process in a separate file with a different name (which actually makes the SCM versioning useless)? In that case how does the JBPM know the two are the newer and older version of the same business process? The name correlation is only cosmetic, isn't it? All in all, you start processes with a process id (which needs to be changed, according to your words).
I'm totally new to JBPM, so don't hesitate to send me to Drools or JBPM5 manual section where I can read more on that issue.