This is not directly the answer you are looking for, but an alternative approach that works wonders for my development environments.
Vagrant (vagrantup.com) is a tool built on VirtualBox which facilitates using virtual machines for development environments. Once you installed it, you can navigate to a local folder with your source files in the terminal, and initialize your virtual machine. Vagrant will map the current folder by default to "/vagrant" inside the virtual machine with read-write access, through VirtualBox's shared folder support. You could then point the webroot inside your virtual machine to a folder below there, for example.
Have a look at the Get Started guide for more info on Vagrant. If you prefer Arch Linux, you can also find prebuilt boxes at www.vagrantbox.es. You can even build your own box from scratch, in which case you might want to look at this chapter in the manual.
As for portability, I believe it is not such a good idea to distribute your sources inside a virtual machine this way (even for a single developer). You should put those in a version control system like Git or SVN, and have a check-out on every machine where you want to develop on.