Como usar o Git para enviar seu site local ao vivo

Publicados: 2022-10-18

Muitas empresas fazem um grande esforço para tornar o desenvolvimento de sites simples para o usuário médio. Isso faz sentido, porque há proprietários de sites que não têm (ou querem) tempo para aprender todos os aspectos da execução de um site local. No entanto, com um pouco de pesquisa, você pode usar o Git para lidar com o processo de colocar seu site no ar. Isso lhe dá um pouco mais de segurança e, depois de configurar tudo, um caminho mais fácil para fazer alterações no site.

Mesmo assim, chegar a esse ponto é reconhecidamente difícil. Há muitos pré-requisitos a serem considerados, habilidades que você precisa ter e ferramentas à mão. Além disso, você precisará pensar no processo nas primeiras vezes, porque há muito o que lembrar. No entanto, usar o Git para enviar um site ao vivo é possível para quase todos os usuários e não precisa ser tão complicado quanto você pensa.

Para este tutorial, mostraremos passo a passo como usar o Git para enviar um site local para um servidor ativo. Primeiro, vamos analisar algumas das ferramentas e tecnologias que apresentaremos no post.

Uma introdução ao Git

Para quem não sabe, o Git é um sistema de controle de versão (VCS). É uma maneira de salvar e registrar as alterações feitas em um projeto – geralmente um aplicativo ou um site. É algo que abordamos em outro lugar, mas você precisará saber mais sobre isso para este tutorial.

O repositório GitHub do WordPress.

A maneira típica de usar o Git é por meio de uma interface de linha de comando (CLI) – se você tiver experiência com o WP-CLI, é uma abordagem semelhante. Você usará comandos para marcar e organizar os arquivos em que trabalha de várias maneiras:

  • Antes de emitir comandos, os arquivos permanecerão 'sem preparação'. Isso significa que eles não fazem parte do seu 'repositório' Git (o diretório que armazena seu histórico).
  • Você emitirá um comando para preparar todos ou alguns de seus arquivos, quando ainda poderá trabalhar neles.
  • Ao terminar, você confirma os arquivos no 'repo' da área de teste. Isso é semelhante a salvar essas alterações.

Pode ser mais complicado do que isso, mas na maioria das vezes você usará apenas alguns comandos para realizar o trabalho diário com o Git.

Usando Git para desenvolvimento baseado em equipe

O Git é uma ferramenta chave para equipes de desenvolvimento, pois cada desenvolvedor abrirá uma 'ramificação' diferente dentro do mesmo repositório. Isso significa que todos podem trabalhar no projeto sem afetar os arquivos dos outros. Em intervalos regulares – geralmente como a última tarefa do dia – a equipe fará alterações no repositório.

Um membro sênior da equipe procurará 'mesclar' todas as ramificações e as alterações juntas no main ou trunk do repositório. Neste ponto, você terá o conjunto definitivo de arquivos de projeto dentro do repositório.

Para um único desenvolvedor – provavelmente você – o Git ainda tem valor como uma espécie de ferramenta de economia incremental. Você abrirá uma nova ramificação, trabalhará em seu site e, em seguida, preparará e confirmará essas alterações. Isso significa que você pode fazer o que quiser no branch sem afetar nenhum outro arquivo em seu site. Quando você quiser confirmar (ou excluir), você pode fazê-lo.

Uma cartilha rápida sobre o desenvolvimento local do WordPress

Antes de prosseguirmos, devemos observar que trabalhar em seu site fora do servidor ativo é uma prática típica recomendada. Se você ainda não faz isso, confira nosso artigo sobre como instalar o WordPress. Além disso, você pode querer considerar um aplicativo dedicado para trabalhar em seu site.

O logotipo DevKinsta.

Local by Flywheel é uma boa opção, mas o DevKinsta também. Independentemente disso, há muitas maneiras de criar um site local, e é algo que você vai querer ter.

Por que você gostaria de usar o Git para enviar um site local ao vivo

A principal razão pela qual você deseja usar o Git para enviar seu site ao vivo é uma que mencionamos acima: Flexibilidade. A natureza do Git significa que você terá um branch principal que serve como o conjunto definitivo de arquivos de projeto. No entanto, você pode abrir quantas novas ramificações precisar - na verdade, é exatamente a maneira como grandes equipes usam o Git em escala.

Com essa abordagem, você pode criar uma nova ramificação para trabalhar no design da página inicial do seu site, sem a necessidade de afetar seus arquivos principais. Considere um branch como um tipo de clone que você mescla de volta ao seu branch principal por meio de confirmações em estágios.

No entanto, existem algumas outras razões pelas quais o Git é útil:

  • Você pode hospedar este repositório Git em qualquer local. GitHub e GitLab são dois sites que se concentram em hospedar repositórios Git. A partir daí, você pode trazer outros membros da equipe ou desenvolvedores se precisar de suporte extra. Você pode até migrar um site com facilidade.
  • Obviamente, você não precisará trabalhar em seu site ao vivo, o que é fantástico do ponto de vista relacionado à segurança e ao desempenho. No entanto, você pode optar por enviar apenas os arquivos em que trabalha. Isso oferece imensos benefícios porque você não precisa mexer no banco de dados do WordPress. Este é o principal objetivo do teste do site, e é possível fazer usando o Git e uma instalação local.

No entanto, para chegar a esse ponto, você precisará ter várias ferramentas, habilidades e pré-requisitos à mão. A seguir, veremos quais são.

O que você precisará antes de usar o Git para enviar sites ao vivo (ferramentas e habilidades)

Vale a pena notar o que você já deve ter no lugar antes mesmo de pensar em quais extras você precisará. Por exemplo, certifique-se de ter o seguinte à mão:

  • Uma versão local do seu site atual.
  • Acesso ao seu painel de controle de hospedagem e servidor como administrador.

A partir daqui, você pode considerar o que mais você precisa para usar o Git com seu site local e servidor ativo:

  • Você precisará instalar o Git no seu computador. Muitas vezes você consegue isso através da linha de comando.
  • Falando nisso, você vai querer ter conhecimento de como usar a linha de comando. Especificamente, você deve saber como se movimentar pelo computador, criar diretórios e arquivos e também removê-los.
  • Conhecimento de acesso Secure Shell (SSH) para seu servidor e pelo menos familiaridade com a criação de chaves seguras. Você pode descobrir um pouco mais sobre isso em nosso artigo sobre o Secure File Transfer Protocol (SFTP).

Isso deve ser suficiente para começar, mas mencionaremos ao longo do artigo se algo mais exigir sua atenção.

Como usar o Git para enviar seu site local ao vivo

Há quatro etapas que você precisa seguir para configurar tudo. Aqui está o que vamos cobrir:

  1. Configurando um repositório Git para seu site local.
  2. Configurando um repositório Git remoto.
  3. Dizendo ao seu repositório Git onde ele precisa enviar as alterações.
  4. Adicionando um link remoto e enviando suas alterações ao vivo.

Há muito o que passar por aqui, então vamos começar!

1. Configure um repositório Git para seu site local

Embora existam algumas maneiras de configurar repositórios Git, faremos isso usando a linha de comando, pois é a maneira mais comum. Com uma janela do Terminal aberta, primeiro navegue até o diretório local do seu site:

Navegando para uma pasta local usando o Terminal e a linha de comando.

Para configurar a arquitetura necessária para seu repositório Git, execute os seguintes comandos um de cada vez:

 git init git add .

O primeiro comando criará o diretório que você precisa e o tornará oculto, enquanto o segundo adiciona todos os arquivos dentro do diretório do seu site à área de teste do Git – o ponto é um modificador 'curinga':

Inicializando um repositório Git e adicionando arquivos usando a linha de comando.

Para ver quais arquivos estão na área de teste, use o comando git status :

Executando git status para ver quais arquivos são testados.

A partir daqui, você desejará realizar um commit inicial dessas alterações para preencher seu repositório local. Você faz isso usando o seguinte comando:

git commit -m "Initial commit."

O sinalizador -m informa ao comando que o que segue é sua mensagem de confirmação. Você precisará fazer isso de qualquer maneira para cada commit, e é mais simples fazer isso de um só lugar.

A partir daqui, você tem tudo configurado no seu computador. Em seguida, é hora de trabalhar no servidor remoto.

2. Configure um repositório Git no servidor ativo do seu site

O processo aqui é semelhante à sua configuração local, mas exige que você faça login no servidor usando SSH. Usar isso está além do escopo deste artigo, mas podemos apontar para uma postagem de Tom McFarlin que descreve as etapas necessárias. Como alternativa, você sempre pode perguntar ao seu host – eles não devem ter problemas para mostrar onde estão essas credenciais.

Depois de fazer login no servidor pela linha de comando, você desejará navegar para uma área privada do servidor para que usuários externos não possam acessar seu repositório Git. O diretório geralmente é /private/ , embora você queira perguntar ao seu host sobre isso.

Dentro desse diretório, você desejará criar outro diretório e navegar até ele:

 mkdir remoterepo.git cd remoterepo.git

Desde que o diretório use a extensão .git , você pode chamá-lo como quiser. A partir daqui, inicialize um novo repositório git dentro do diretório, desta vez usando o sinalizador –bare:

git --bare init

Isso cria o repositório que você precisa sem os arquivos do projeto, o que é seguro e recomendado.

3. Crie um 'gancho' para seu repositório e defina as permissões de arquivo corretas

Enquanto estiver no servidor, você precisará criar um arquivo para informar ao Git para onde enviar as alterações. Primeiro, execute o nano hooks/post-receive command . Isso abre um editor de linha de comando chamado Nano e cria o arquivo no diretório correto.

Dentro deste arquivo, adicione o seguinte:

 #!/bin/sh GIT_WORK_TREE=/home/username/example.com git checkout -f

O /home/user/example.com deve apontar para a localização exata dos arquivos ativos do seu site. O nome de username deve ser aquele com o qual você fez login no shell e example.com deve ser o domínio do seu site ativo. Depois de fazer isso, salve suas alterações.

A etapa final aqui é definir as permissões de arquivo corretas para este arquivo. Você pode fazer isso usando o comando chmod +x hooks/post-receive . O comando Change Mode (chmod) é como você define permissões de arquivo na linha de comando – +x significa definir permissões de execução .

Depois de fazer isso, digite exit para sair do terminal remoto. A partir daqui, você precisará voltar ao seu repositório Git local no Terminal.

4. Adicione um link remoto ao seu repositório local e envie suas alterações locais ao vivo

Aqui, navegue de volta ao seu repositório Git local usando o comando cd conforme necessário. Você precisará adicionar um link ao seu servidor remoto, para que ambos os repositórios Git possam se comunicar. Você fará isso com o seguinte comando:

git remote add origin ssh://[email protected]/~/remoterepo.git

A URL exata do repositório Git dependerá do local que você descobriu na última etapa. Obviamente, suas credenciais de usuário e servidor substituirão os espaços reservados aqui.

Execute este comando e prepare-se para enviar suas alterações locais para seu servidor ativo. O comando a seguir fará isso sem confirmação, portanto, certifique-se de que deseja fazer isso:

git push -u origin main

Você verá o Terminal exibir um resumo de confirmação…

 Counting objects: 12, done. Delta compression using up to 2 threads. Compressing objects: 100% (2/1), done. Writing objects: 100% (13/13), 1200 bytes | 0 bytes/s, done. Total 12 (delta 0), reused 0 (delta 0)

… e neste ponto você pode verificar seu site ao vivo – as alterações devem estar presentes e corretas.

Em suma

Trabalhar em seu site é uma tarefa necessária e muitas vezes diária. Usar um ambiente local é a maneira típica de fazer isso, mas há um problema – como você obtém essas alterações em seu site ativo sem erros e com o mínimo de confusão?

A resposta pode ser usar o Git para enviar as alterações que você faz ao seu servidor ativo. Isso permite que você carregue apenas os arquivos nos quais você fez alterações, para que a maior parte de sua instalação – e banco de dados – permaneça como está. Embora você precise de algum conhecimento e ferramentas para fazer tudo funcionar, é uma mudança de fluxo de trabalho que pode fazer o desenvolvimento do seu site local disparar em produtividade e eficiência.

Você acha que usará o Git para enviar ao vivo as alterações do site local? Deixe-nos saber seus pensamentos na seção de comentários abaixo!