If you are making changes through the GUI I believe it will create a .bak file after every GUI change so you would only be able to rollback 1 change. If you are making changes via tmsh, this will be in memory and not be saved until you save it with 'save sys config', for this case you can do multiple changes and if you need to rollback then 'load sys config'. If you have HA you can always sync the standby config as a rollback strategy. I always create a UCS and that will be my backstop rollback depending on complexity of change and what modules are involved.
cheers