The backup of the configuration files is a feature that was added back in Sitecore 8 update-3, primarily introduced to help Sitecore Support with diagnostics information when trying to resolve issues.
Sitecore.Pipelines.Loader.DumpConfigurationFiles processor is responsible for creating these dumps/zip, but note that this is called from the
initialize pipeline which means that this will only happen once on startup, and it is not a processor that runs periodically or on a schedule.
If there multiple backup files that appear to be 20 mins apart it is purely coincidental, happening after a deployment or App Pool restart for whatever reason. If this is your local machine then it may be after a code deployment then it is probably again coincidental with a deploy from Visual Studio.
Note: If this is happening on a Production server then I would be more worried about this issue, and there is a different underlying issue causing your application to restart too often. Do not just patch the processor out, instead figure out what the problem is.
As useful as this may be, it is not strictly required, you can remove the processor with a patch config if you so wish:
<processor type="Sitecore.Pipelines.Loader.DumpConfigurationFiles, Sitecore.Kernel">
If this on your local machine, you may wish to use the Developer Performance configs from Kam Figy.
Or as Peter points out in his answer, change the
maxAge property of the
CleanupAgent task. For example, to only keep files less than 6 hours old, patch the config:
<remove folder="$(dataFolder)/diagnostics/configuration_history" set:maxAge="06:00:00" />
You can read more about the processors in this blog post.