Best Practice for Updating a Package Owned Protocol

Hello,

I created a protocol and its components as a package and deployed them.  I love the fact that in the client the protocol is readonly.  And now I would like to modify them, which is where I have questions.

My current process for making changes is to:
  1. Copy the protocol to my personal account.
  2. Make the changes and test it.
  3. Export the XML for everything that has changed and then copy these over the corresponding XML files that are in the apps///xml folder.
  4. Run pkgutil -u /, then pkgutil -i.
  5. Run pkgutil -v to verify that it's installed properly.
  6. I typically have to run pkgutil -q to rebuild ComponentState.txt (which I think sets the owner of the package so that it's not my personal account).
Is there a better way to do this?

This works fine, but now the version history is lost.

I'm thinking that I might create a *shadow* copy of the entire package's protocols and components in my personal folder and keep it there forever, which would maintain the version history, but then the folder structure is different.  Would that be a problem?

During step 5 above, it usually complains that either the owner is wrong or the GUIDs are wrong.  I run "pkgutil -q" to repair these errors.  Are these errors expected and am I repairing it properly?

Thank you,
Randy Stegbauer