When a programmer has a local copy of the code and an environment fully functional where the web can be tested before going live, we usually call it a working copy.
The action of moving/copying/putting this work in the final live server (a.k.a production server/environment) is called the deploy action.
There are many ways of having a working copy up and running. We, the key stroker maniacs, use to work more or less with one of the following working copy configurations:
- No working copy. The one who enters via SSH and uses the editor vi. Yeah!
- Edit via FTP/SFTP with an editor installed in the local machine. No working copy, the return.
- Local web server. Usually a pre-built LAMP solution, such as MAMP or XAMPP. Valid until you need to add 2 or 3 more services like Memcached, Sphinx, Solr, MongoDB, Redis or anything like that, or the Virtual host configuration starts to change over and over.
- A web server in your LAN. Several users using a machine with all the services configured, having their own running copy. Different DocumentRoot per user.
- The Virtual machine lover, who runs a VirtualBox or VMWare with a full linux installed and exports and shares the appliance with colleagues if necessary.
- The Vagrant chef, who has an automated system to deliver pre-configured environments to any number of developers using VirtualBoxes underneath.
In this post, I am proposing something different, it has the smell and aroma of the early 90's development, but still, a good solution when you have a middle team (2-20) where people don't want to be bothered with constant database changes and service tunning. It is the private remote working copy over SFTP. Keep reading...Read more