Yes, I do use a VCS. This is not something I'd recommend performing in prod on mission critical type system for obvious reasons. I quite often use the approach to apply patches, which at runtime modifies the bytecode in my remote running JVM. (So I apply a patch to my blog without needing to restart the proxied servlet, just hit refresh in browser. Something old Java guys like myself are not used to :-))