1. A method of versioning configurations of reusable artifacts, the method comprising: creating an artifact baseline corresponding to a present version of a first artifact; responsive to creating the artifact baseline, by a processor, making the present version of the first artifact, and present versions of children artifacts of the present version of the first artifact, immutable; and responsive to identifying a change to the present version of the first artifact, automatically creating a new version of the first artifact, wherein the new version of the first artifact is mutable.