Git no cPanel: publicar o site a partir de um repositório

PHP e Programação··· 622 visualizações· 5 min de leitura

Quem trabalha com Git conhece o incômodo: o código está num repositório, o site está no servidor, e entre os dois há sempre alguém a arrastar arquivos por FTP e a esquecer-se de um. O cPanel tem uma ferramenta que fecha essa distância.

Chama-se Git Version Control e está na seção Files do painel. Neste servidor o Git instalado é a versão 2.48.2.

Isto não é um serviço de hospedagem de código. Não substitui o GitHub, o GitLab, o Bitbucket nem o servidor de Git da sua empresa. Não há página para navegar no código, não há pedidos de integração, não há gestão de equipe. O repositório central continua sendo de outra gente; o que esta ferramenta faz é trazer de lá para aqui e publicar.

O que a ferramenta faz, em duas partes

Parte O que acontece
O repositório Cria um repositório dentro da sua conta. Pode ser vazio, para começar do nada, ou clonado de um endereço que lhe dê. Depois de criado, pode pedir-lhe que vá buscar as alterações novas do repositório remoto.
A publicação Copia arquivos do repositório para onde o site os lê, seguindo as instruções de um arquivo chamado .cpanel.yml que você põe na raiz do repositório. Sem esse arquivo, o repositório existe mas não publica nada.

A divisão é importante: o repositório pode viver numa pasta fora do site, e só o que a publicação copiar é que fica visível na internet. É assim que se quer.

A ordem que funciona

1 Escolha onde vive o repositório, e não ponha isso dentro da pasta pública do site. Uma pasta ao lado, na pasta pessoal da conta. O porquê está no aviso mais abaixo, e vale a pena lê-lo antes de decidir.
2 Clone o repositório remoto, dando o endereço dele. Se o repositório for privado, o servidor precisa de credenciais para lá chegar, e isso não se resolve sozinho: ou o repositório é público, ou trata das chaves de acesso do lado de quem o hospeda.
3 Escreva o arquivo .cpanel.yml na raiz do repositório, com as linhas que dizem o que copiar e para onde. É um arquivo de texto curto, entra no repositório como qualquer outro, e a documentação do cPanel mostra o formato exato.
4 Traga as alterações do repositório remoto para o da conta, sempre que houver novidades.
5 Mande publicar, e confira o site. A ferramenta guarda o resultado da última publicação, que é onde se vê se deu certo ou onde parou.
Nunca deixe a pasta .git dentro do que o site serve. Se o repositório ficar dentro da pasta pública, qualquer pessoa pode transferir o histórico inteiro do seu código a partir do navegador, e com ele as senhas que alguém gravou num arquivo de configuração há dois anos e depois apagou. Apagado do arquivo, continua no histórico. Se já está assim, tire-o de lá hoje e mude as senhas que estiverem no histórico.

O que não deve entrar no repositório

Não pôr Por quê
O arquivo de configuração com a conexão ao banco de dados Traz usuário e senha. Fica no histórico para sempre, e acompanha o repositório para todo mundo que o clonar. Guarde-o fora do repositório e deixe-o no servidor.
A pasta dos arquivos enviados pelos visitantes Imagens, anexos, documentos. Não são código, crescem sozinhos, e uma publicação que os substitua apaga o que os usuários enviaram desde a última vez.
O banco de dados O Git trata de arquivos. O banco de dados copia-se à parte: fazer e guardar a sua própria cópia.
Pastas de dependências baixadas São enormes e reconstroem-se a partir do arquivo que as lista. Pô-las no repositório torna cada operação lenta sem ganho nenhum.
Experimente primeiro num subdomínio. Uma publicação mal escrita copia por cima de arquivos de verdade. Crie um subdomínio de ensaio (como adicionar outro domínio ou um sub-domínio), aponte lá a primeira publicação, e só depois mude para o site verdadeiro.

Quando isto vale a pena, e quando não vale

Caso Vale?
Um site feito à mão, ou uma aplicação sua, com mais do que uma pessoa a mexer Vale muito. Acaba com o «quem é que substituiu isto» e com os arquivos esquecidos no caminho.
Um WordPress normal, onde o conteúdo se escreve no painel Quase nunca. O que muda num WordPress são o banco de dados e os arquivos enviados, e nenhum dos dois é coisa para Git. Aí o caminho são os backups e um site de ensaio.
Um tema ou plugin seu, feito por si Vale. Esse sim é código, e pode viver num repositório só dele.
Publicar um site estático gerado no seu computador Vale. É dos casos em que a publicação fica mais simples: o repositório traz a pasta pronta e a publicação copia-a.

Se prefere continuar enviando arquivos à mão, nada disto é obrigatório: contas FTP e ligar com o FileZilla e o dia-a-dia no FileZilla continuam servindo.

Para o trabalho de linha de comandos que acompanha um repositório, o painel também tem Terminal, quando a conta o permite.

Quer publicar a partir de um repositório e não sabe por onde começar? Diga-nos o que tem.

Abrir um pedido de suporte

VEJA TAMBÉM

Planos de hospedagem: o que cada um inclui

Política de Suporte: até onde vai a nossa ajuda

PRODUTO RECOMENDADO

Alojamento de sites com cPanel

Domínio e SSL incluídos, cópias diárias e o painel que já conhece. desde R$ 36,30/mês (plano de 3 anos, com cupom)

Ver planos
Esta resposta foi útil? Sua resposta nos ajuda a melhorar este artigo.