Something I regularly use as a developer for my client sites, is a custom script I once wrote that clones a live WP site to a demo subdomain, but automatically does the following as well:
- Performs rsync on files from live to the demo instance
- Excludes specific files like wp-config.php, .htaccess, robots.txt, cache and the uploads directory content
- Takes a backup of the live instance database and imports it to the demo
- Performs search and replace all original URLs (domain.ext) to demo URLs (demo.domain.ext) in the database
- Uses an .htaccess rule to redirect demo media urls to the live version (this way I don't need to clone the media to the demo, save disk space and speed up the process)
- Replaces the admin email and the woocommerce sender/receiver emails with a developer email
- Enables the demo store notice in woocommerce and sets a "This is a development store - no orders will be fulfilled" message as well as a redirect to live link.
- Fixes permissions and ownerships if required
This way whenever I need to develop/test something on a site I do a one click clone and have a ready demo instance to work on. However this requires sudo/root ssh access to execute, and some additional configuration for the demo instance, so I'd love to see that simplified in a panel button with a bunch of settings.