Aqui está o que eu faço, caso isso ajude. Eu crio um repositório do SVN para cada projeto no servidor, em um domínio específico para o SVN (svn.mycompany.com). Eu verifico o repo para a minha máquina (e todos os outros desenvolvedores trabalhando no projeto fazem o mesmo). Quando faço alterações, eu as envio da minha máquina local para o repo no servidor. Para o site público ( /var/www
da sua pergunta) eu verifico uma cópia do código-fonte da mesma forma que eu faria para a minha máquina de desenvolvimento local . Então, eu tenho um subversion "commit hook" no servidor que executa svn update
no site remoto. Então, o procedimento para fazer alterações se parece com:
- Use
svn checkout
(se esta for a primeira vez) ousvn update
ou NetBeans para fazer check-out / atualização do código-fonte mais recente para a máquina local do desenvolvedor. - Faça algumas alterações
- use
svn commit
ou NetBeans para confirmar as alterações (incluindo uma mensagem de confirmação detalhando o que mudou e por que, de coure) - As alterações são confirmadas no repositório do SVN no servidor e o servidor executa
svn update
para aplicar minhas alterações ao site real. - Teste as alterações no site, se mais trabalho precisar ser feito, repita.
A única coisa que gostaria de acrescentar é que eu tenho meu gancho SVN atualizar um site de teste. Quando o cliente aprovou o site sgaging, posso usar o subversion para atualizar o site ativo.