Deploy automático via Git no seu VPS: descomplicando com a Sensei 🥋
Oi! Eu sou a Sensei da GeHost, e hoje vou te ensinar uma técnica que separa quem "sobe site na unha" de quem tem um fluxo de trabalho profissional: o deploy automático via Git. Com isso configurado, toda vez que você enviar uma atualização do seu código, o seu site no VPS se atualiza sozinho — sem precisar copiar arquivo por FTP, sem drama. Bora aprender juntos, passo a passo, sem pressa.
Este guia é voltado para quem tem acesso SSH ao próprio servidor (VPS). Se você não sabe se o seu plano inclui esse tipo de acesso, é só confirmar com a nossa equipe pelo painel.gehost.com.br antes de começar — assim você já parte com o pé direito.
O que você vai precisar antes de começar
- Acesso SSH ao seu servidor;
- O Git instalado no seu computador (na maioria dos sistemas já vem, ou é só instalar);
- Seu projeto já versionado em um repositório Git local;
- Um pouquinho de paciência na primeira vez — depois de configurado, é só magia 🪄.
Passo 1 — Confirme (ou instale) o Git no servidor
Conecte no seu VPS via SSH e confira se o Git já está instalado:
git --version
Se não aparecer nenhuma versão, instale (em distribuições baseadas em Debian/Ubuntu, por exemplo):
sudo apt update sudo apt install git -y
Passo 2 — Crie um repositório "bare" no servidor
O segredo do deploy automático é ter, no servidor, um repositório especial chamado bare — ele não guarda os arquivos "visíveis", só o histórico do Git, e é para onde você vai enviar (dar push) suas atualizações. Crie uma pasta para ele, fora da pasta pública do site:
mkdir -p ~/meusite.git cd ~/meusite.git git init --bare
Passo 3 — Configure o "gatilho" de deploy (hook post-receive)
Agora vem a parte mágica: um script que roda automaticamente toda vez que você envia código para esse repositório, copiando os arquivos para a pasta real do site. Dentro da pasta do repositório bare, edite o arquivo de hook:
nano hooks/post-receive
Cole um conteúdo parecido com este (ajuste os caminhos para a pasta onde o seu site realmente fica publicado):
#!/bin/bash git --work-tree=/caminho/para/a/pasta-do-site --git-dir=/caminho/para/meusite.git checkout -f
Salve e dê permissão de execução:
chmod +x hooks/post-receive
Passo 4 — Aponte seu computador para o servidor
De volta no seu computador, dentro da pasta do seu projeto local, adicione o servidor como um "remote" do Git:
git remote add producao ssh://usuario@seu-servidor/~/meusite.git
Dica: troque usuario pelo seu usuário SSH e seu-servidor pelo endereço/domínio do seu VPS — dados que você recebeu no cadastro do seu servidor.
Passo 5 — Teste o deploy!
Agora é a hora da verdade. Faça um commit qualquer e envie para o servidor:
git add . git commit -m "primeiro deploy automático" git push producao main
Se tudo estiver certo, o Git vai mostrar o processo de envio e, no fim, o hook post-receive vai rodar sozinho, atualizando os arquivos do site. É só abrir o seu domínio no navegador para conferir!
Dica de segurança da Sensei: prefira sempre autenticação por chave SSH em vez de senha — é mais seguro e evita que você tenha que digitar senha a cada push. E nunca versione arquivos sensíveis (senhas, chaves de API, arquivos de configuração com dados confidenciais) dentro do repositório — use variáveis de ambiente ou arquivos ignorados pelo Git (.gitignore).
Dica extra: antes de configurar automações novas em um site que já está no ar, é sempre uma boa prática garantir que você tem um backup recente — assim, se algo sair diferente do esperado, você volta atrás com tranquilidade.
Quando pedir uma força pra gente
Se em algum passo o acesso SSH não funcionar, ou você não tiver certeza dos caminhos corretos do seu servidor, não force a barra sozinho — abra um chamado pelo painel.gehost.com.br que a equipe te ajuda a confirmar os dados certos do seu ambiente.
E é isso! Com o deploy automático configurado, atualizar o seu site vira rotina de poucos segundos. Continue praticando, e qualquer dúvida, a gente está por aqui. 🥋