I do, and to be honest with you it is more fractured than it has ever been.
Back in the 90s "everyone" used FTP. Now the methods of deployment vary wildly including but not limited to:
- FTP (over VPN), "Shared Folders" (SMB, over VPN), RDC/RDP (seriously, often not over VPN)
- Git clients (and other source control, controlled over SSH), SFTP, FTPS, CMS (over HTTP/S), SCP, rsync/robocopy (over VPN)
- Virtualisation trickery: Like cloning, snapshots, and shared data storage.
The "best" way depends on a lot of factors. For example are you doing staging? Do you even have source control? How many servers? Etc. There is no one size fits all solution.
For a small host or personal site, you can likely do what everyone else does: SFTP on Linux/BSD, and FTPS on Windows (via Filezilla Server).
We use git and have branches designated as Dev, Test, Prod (etc) with webhooks or other scripts that automatically deploy the branches based on the workflow. At my last job (small webshop) it was automated, but my current job is more "Enterprisey" and we have separation of duties and other work flow constraints which mean that I never push anything to production myself (or test for that matter).
Back in the 90s "everyone" used FTP. Now the methods of deployment vary wildly including but not limited to:
- FTP (over VPN), "Shared Folders" (SMB, over VPN), RDC/RDP (seriously, often not over VPN)
- Git clients (and other source control, controlled over SSH), SFTP, FTPS, CMS (over HTTP/S), SCP, rsync/robocopy (over VPN)
- Virtualisation trickery: Like cloning, snapshots, and shared data storage.
The "best" way depends on a lot of factors. For example are you doing staging? Do you even have source control? How many servers? Etc. There is no one size fits all solution.
For a small host or personal site, you can likely do what everyone else does: SFTP on Linux/BSD, and FTPS on Windows (via Filezilla Server).