While I was building https://laravelremote.com (a Laravel remote job aggregator), I was worried that each time I wanted to push some changes to the production server, it might take the website down for a couple of seconds. Laravel offers a first-party paid product to avoid this, https://envoyer.io/ it's only $10 bucks a month.
The only thing you need to know is that my NGINX server is configured to read my website from the /var/www/laravelremote.com/ directory.
More simply, every new release will be deployed then linked to the current directory, which will make the server show the updates.
These are the default Laravel directories that exist within the storage directory.