You might want to store a description of the changes, when you save a changed template.
You can use the revision log to store such information.
With the revision log you can:
1.Save a description of the change in the revision log on the template.
2.View the revision log to view a description of the previous changes to a template.
The revision log does not store the complete, old version of a template. For that you might consider github or similar.