You could create a new object each time the form is going to be filled in. Just check if the user has a previous object with data and copy it over before showing the form.
You would have to resolve that in your app design/domain model.
Keep a history of objects if you want to see previous versions.
Alternatively, if only changes to some fields are relevant you could make an associated list of objects for those fields.
And if you just want to log and nothing else, write a Save microflow that does the logging.