Skip to content
- Its the pain with FTP deployments
- With FTP deployments, it needs to be re-upload the entire website with each change (or manually track which files have changed) whereas git will automatically transfer the exact changes needed.
- Git allows us to work with complete change sets rather than individual files. Oftentimes a change in one file will depend on a change in another file. With git, these changes are all bundled together in a commit, whereas with FTP we’re forced to always work with individual files and directories.
- With FTP deployments, you can’t tell which version of the code is currently running on the server, whereas git keeps track of that and makes it easily accessible.
- With git running on the server it’s very easy to see files that may have been modified or added by malicious code or hackers; with FTP there is no such visibility.
- Git uses ssh as the network protocol which allows for individual password-less keys to be used for authentication, instead of shared passwords
- FTP deployments are much more difficult to automate or integrate into a larger deployment workflow which should include things like CSS compilation, JavaScript modification, deleting private files, and more.
- Git provides a number of hooks that can run during and after updates are applied, allowing you to run custom scripts automatically when deployments are made.
- Git also makes it very easy to roll back to a previous version of the code – should that ever be necessary – since all past versions are already stored on the server.
Very good write-up. I absolutely appreciate this site. Thanks!