Mudanças entre as edições de "Publicando site PHP com Git"

De Wiki Integrator do Brasil
Ir para: navegação, pesquisa
Linha 49: Linha 49:
 
touch README
 
touch README
 
git add README
 
git add README
git commit -a -m "Initial Commit"
+
git commit -m "Initial Commit"
 
git remote add origin ssh://integrator@integrator.com.br/~/repo/integrator.com.br
 
git remote add origin ssh://integrator@integrator.com.br/~/repo/integrator.com.br
 
git push origin master
 
git push origin master

Edição das 06h11min de 18 de dezembro de 2016

Í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 

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.