Como automatizar o versionamento de deploys com tags Git no servidor
Olá, querido(a) desenvolvedor(a) e amante de boas práticas! 👋 Seja bem-vindo(a) ao seu novo passo rumo à automação, organização e tranquilidade no deploy dos seus projetos. Aqui, na GeHost, acreditamos que tecnologia deve servir para facilitar — não complicar.
Hoje, vamos aprender juntos como automatizar o versionamento de seus deploys usando tags Git diretamente no servidor. Isso quer dizer: cada vez que você publicar uma nova versão do seu site ou app, ela será registrada com uma tag clara — como v1.0.1, v2.0.0 — e tudo isso acontece de forma automática, sem precisar fazer nada a mão. É como se o seu servidor "soubesse" exatamente qual versão está rodando.
Este guia é feito especialmente para quem está começando ou quer deixar tudo mais limpo e profissional. Vamos com calma, passo a passo, como um bom mestre e seu discípulo. 😌
Pré-requisitos: o que você precisa ter
- Seu projeto já está em um repositório Git (local ou remoto, como GitHub, GitLab ou Bitbucket).
- Seu site está hospedado na GeHost (com acesso ao cPanel).
- Conhecimento básico de linha de comando (SSH) — mas não se preocupe, vamos explicar tudo.
- Permissão para usar SSH no seu plano (todos os planos GeHost permitem).
Dica do Sensei: Se você não sabe o que é Git ou como usar SSH, não se assuste! Isso é só o começo. Com o tempo, você vai dominar. E a GeHost está aqui para te ajudar — basta abrir um ticket no painel do cliente.
Passo 1: Acesse o servidor via SSH
Para começar, você precisa se conectar ao servidor da GeHost usando SSH. Isso pode ser feito pelo terminal (Linux/Mac) ou via cliente como PuTTY (Windows).
No seu terminal, digite:
ssh usuario@seu-dominio.com
Substitua usuario pelo nome de usuário do cPanel e seu-dominio.com pelo domínio do seu site. Você pode encontrar esse nome no painel do cliente.
Passo 2: Acesse a pasta do seu site
Depois de logado, navegue até a pasta onde seu site está hospedado. Normalmente, ela está em public_html ou em uma subpasta como public_html/meu-site.
Use o comando:
cd public_html
Se o seu projeto estiver em uma subpasta, entre nela:
cd meu-site
Passo 3: Verifique se o Git está instalado
No servidor, o Git geralmente já está instalado. Para confirmar, digite:
git --version
Se aparecer algo como git version 2.34.1, tudo certo! Se não, entre em contato com o suporte da GeHost — eles podem ajudar a instalar.
Passo 4: Configure o Git com seu nome e e-mail
Antes de fazer qualquer commit ou tag, é bom configurar seu nome e e-mail no Git do servidor:
git config --global user.name "Seu Nome"
git config --global user.email "seu.email@dominio.com"
Isso ajuda a manter o histórico limpo e identificável.
Passo 5: Configure um hook de deploy automático
Agora vem o coração do processo: criar um hook Git que, toda vez que você fizer um push com uma tag, faça o deploy automático no servidor.
Na pasta do seu projeto no servidor, crie um arquivo chamado post-receive no diretório .git/hooks/:
cd .git/hooks
nano post-receive
Abra o editor de texto (no caso, nano) e cole este conteúdo:
#!/bin/bash
# Este script é executado após um push com tag
# Ele faz o deploy automático da tag no servidor
echo "Iniciando deploy da tag..."
# Atualiza o repositório
git fetch --all
# Verifica se a tag foi enviada
if [ -n "$1" ]; then
TAG_NAME="$1"
echo "Tag recebida: $TAG_NAME"
else
echo "Nenhuma tag enviada."
exit 1
fi
# Atualiza o código no diretório de publicação
git checkout -f $TAG_NAME
# Mensagem de sucesso
echo "Deploy da tag $TAG_NAME concluído com sucesso!"
Salve o arquivo com Ctrl + O, depois Enter, e saia com Ctrl + X.
Depois, dê permissão de execução ao script:
chmod +x post-receive
Passo 6: Faça um push com uma tag no seu repositório remoto
Agora, no seu computador local, vá até o projeto e faça um push com uma tag:
git tag v1.0.1
git push origin v1.0.1
Isso enviará a tag para o repositório remoto (GitHub, GitLab etc.) e, se o servidor estiver configurado corretamente, o hook será acionado automaticamente.
Se tudo estiver certo, o servidor irá atualizar o código com a versão v1.0.1 e você poderá ver o resultado no site!
Passo 7: Verifique o deploy
Para confirmar que o deploy funcionou:
- Acesse seu site e veja se a nova versão está rodando.
- Volte ao servidor e digite:
git log --oneline -n 5para ver os últimos commits e tags. - Verifique se a tag aparece:
git tag.
Dica do Sensei: Sempre teste em um ambiente de desenvolvimento antes de fazer isso em produção. E lembre-se: automatizar é bom, mas sempre verifique o que está acontecendo!
Como manter tudo seguro e organizado
Com esse sistema, você ganha muito mais do que só automação:
- Todo deploy tem uma tag clara — fácil de rastrear.
- É possível voltar para uma versão anterior com apenas um comando:
git checkout v1.0.0. - Não há risco de sobrescrever o código por engano.
- Se algo der errado, você pode reverter rapidamente.
É como ter um registro de histórico de versões no seu próprio servidor — sem depender de arquivos ZIP ou e-mails.
Quer ir além?
Com um pouco mais de conhecimento, você pode:
- Adicionar logs ao script para ver o que acontece em cada deploy.
- Usar
git pullem vez degit checkoutpara atualizar apenas arquivos modificados. - Automatizar o envio de notificações por e-mail ou Telegram quando um deploy ocorre.
Se quiser, o suporte da GeHost pode te ajudar a montar um sistema mais completo — basta pedir no painel do cliente.
Conclusão: Você está no caminho certo!
Parabéns por aprender a automatizar o versionamento de seus deploys com tags Git! 🎉
Esse é um passo essencial para quem quer deixar seu trabalho mais profissional, seguro e escalável. E lembre-se: você não está sozinho. A GeHost está