Eu tenho um monte de sites que eu desenvolvo, e eu corro um servidor Apache localmente para fazer depuração e design. Os sites usam Apache, PHP e MySQL. Para ser claro, meu servidor Apache não está servindo esses sites para a internet, apenas os acesso localmente.
Eu desenvolvo em duas máquinas. Uma área de trabalho e um laptop. Ambos estão executando o Linux Mint e eu tento manter as configurações consistentes entre eles. Isso significa que eu tenho que duplicar as configurações do Apache e do PHP. Eu mantenho as estruturas de diretórios iguais. Eu tenho que certificar-se de copiar os bancos de dados MySQL de uma máquina para o outro, se eu fizer alterações.
O que não é ideal. É propenso a erros humanos, especialmente com a manutenção dos bancos de dados MySQL sincronizados. Às vezes, trabalho em uma em uma máquina, esqueço de exportar e importar os bancos de dados e, depois de trabalhar na outra máquina, tenho duas versões e não consigo mesclá-las facilmente. Além disso, é um aborrecimento para fazer backups.
O que funciona é que eu armazeno todo o meu HTML, CSS e Javascript em uma pasta no meu diretório do Dropbox. Então, qualquer alteração que eu fizer nesses arquivos será automaticamente sincronizada. Isso também significa que eu tenho um backup na nuvem. Caso seja necessário, para restaurar esses arquivos, caso eu mude para uma nova máquina, basta instalar o Dropbox e todos os arquivos serão recuperados.
O máximo que tenho de fazer se estiver configurando em um novo computador é criar um link simbólico para o meu diretório do Dropbox onde meus arquivos HTML estão armazenados:
sudo ln -s /home/dave/Dropbox/Websites /var/www/Websites
Existe uma maneira de fazer isso com minhas configurações do Apache e bancos de dados MySQL também? Onde posso mantê-los sincronizados em ambas as máquinas na minha pasta Dropbox e ter um mínimo de configuração se for para uma nova máquina?