Publicando site PHP com Git

De Wiki Integrator do Brasil
Edição feita às 06h12min de 18 de dezembro de 2016 por Integratorhost (disc | contribs)

Ir para: navegação, pesquisa

Índice

Antes de Começar

As seguintes características devem ser observadas pelo usuário caso deseje operar com o Git:
1. O seu plano na Integrator precisa ter habilitado o SSH. Caso não saiba, entre em contato com o suporte.
2. O Git possui comandos de termina SSH. Caso não tenha conhecimentos do Git, recomendamos estudá-lo antes. Se precisa conhecer o Git, visite o endereço:
https://git-scm.com/book/pt-br/v1/Primeiros-passos-No%C3%A7%C3%B5es-B%C3%A1sicas-de-Git
3. O suporte de hospedagem não ensina o Git e nem resolve questões de uso do versionador. O item 2 deve ser analisado para esta questão


O acesso SSH

Veja o tópico Acesso SSH para saber como operar no SSH.


Usando chaves para operar o SSH

Aprenda a gerar chaves para o uso do SSH através do tópico Gerando chaves de acesso SSH no cPanel.

Criando o repositório online

1. Crie as chaves de acesso SSH para facilitar seu acesso ao terminal para uso do Git.
2. Acesse o terminal SSH da sua conta.
3. Crie os seguintes diretórios com o comando a seguir. Substitua "integrator.com.br" pelo nome do seu site:

mkdir -p ~/repo/integrator.com.br

4. Entre no diretório e crie o repositório:

cd ~/repo/integrator.com.br
git init --bare

Configurando o repositório para enviar seus arquivos para produção

O exemplo a seguir irá partir do princípio que o site em PHP será publicado no diretório public_html. Caso precise mudar este comportamento, mude o caminho onde aparece "/home/integrator/public_html".
1. Vamos criar o post-receive como mostrado no exemplo a seguir, substituindo "integrator" pelo nome do usuário do seu SSH/FTP/cPanel:

echo 'root="/home/integrator/public_html"
GIT_WORK_TREE=$root
export GIT_WORK_TREE
echo "Working tree set to $GIT_WORK_TREE"
git checkout -f' > ~/repo/integrator.com.br/hooks/post-receive

2. Dar a permissão de execução:

chmod +x ~/repo/integrator.com.br/hooks/post-receive

Localmente em seu repositório

O seguinte comando é um exemplo de uso dentro do seu projeto, onde vamos fazer um teste:

#Dentro do projeto local:
git init
git add .
touch README
git add README
git commit -m "Initial Commit"
git remote add origin ssh://integrator@integrator.com.br/~/repo/integrator.com.br
git push origin master

Legenda:
integrator@integrator.com.br - Usuário e domínio do seu acesso SSH.
~/repo/integrator.com.br - O caminho do seu repositório online.

Caso haja erro

Se no comando git push origin master der o seguinte erro:

git push origin master
error: src refspec master does not match any.
error: failed to push some refs to 'ssh://integrator@integrator.com.br/~/repo/integrator.com.br'

Faça o seguinte comando:

git push origin master --force 


Veja mais sobre o Git na Integrator

Temos também o tutorial O GIT.


IMPORTANTE: É fundamental entender que o suporte de hospedagem não se responsabiliza por quaisquer comandos ensinados neste tutorial e realizados de forma imprudente. Recomenda-se cautela para realizar uma publicação do site diretamente pelo repositório.