GIT + FTP – Como usar

leonardo

Olá, neste tutorial irei ensinar como utilizar o GIT para fazer deploy em uma hospedagem compartilhada no Hostgator utilizando o linux como cliente (o ubuntu no meu caso).

Se você utiliza GIT para realizar o versionamento dos seus projetos esse tutorial vai ser uma mão na roda para você.

1. Ativar o SSH

Acesse o cpanel da sua hospedagem e procure pela opção seguinte:

Captura de tela de 2015-03-13 11:56:50Em alguns casos talvez seja necessário entrar em contato com a hospedagem para a liberação do SSH.

2. Preparar o acesso ao SSH

Com o SSH liberado no servidor o próximo passo é gerar as chaves de acesso, abra o terminal (Ctrl+Alt+T) dê o seguinte comando:

$ ssh-keygen -t rsa

em seguida basta pressionar ENTER até o processo de geração das chaves terminar.

3. Enviar as chaves publicas para o servidor

Para enviar sua chave de acesso para o servidor você tem duas opções, usar o SCP ou o FTP (comigo foi esta que funcionou). Para envia-la pelo SCP utilize o seguinte comando:

$ scp -p 2222 ~/.ssh/id_dsa.pub USUARIO_REMOTO@SERVIDOR:/home/USUARIO_REMOTO/.ssh

Lembre-se de substituir os dados pelos seus 😉
O comando -p 2222 serve para especificar uma porta diferente da padrão (22) utilizada pelo SSH.

Para enviar sua chave pelo FTP basta acessar seu FTP e no diretório raiz criar uma pasta chamada .ssh em seguida envie o arquivo id_dsa.pub que esta dentro da pasta .ssh do seu usuário. Lembre-se que, no linux, todas pastas e arquivos que começam com . são ocultos, para exibili-los no navegador de arquivos do ubuntu basta apertas as teclas Ctrl+H.

4. Habilitando a chave pública no servidor

O próximo passo é habilitarmos sua chave publica no servidor, para isso digite o seguinte comando no terminal:

$ ssh -p 2222 usuario@seusite.com

Digite a senha do seu usuario e em seguida digite as seguintes instruções:

$ cd ~/.ssh/
$ cat id_dsa.pub >> authorized_keys
$ chmod 644 authorized_keys

Se o arquivo authorized_keys já existir, você pode criar o authorized_keys2 ou authorized_keys3.

5. Criando um repositório remoto

Agora devemos criar um repositório no seu servidor, para isso digite as seguintes instruções no terminal:

$ mkdir website.git && cd website.git
$ git init --bare

Assuma que website é o nome do seu site, caso vá utilizar outro nome evite utilizar espaços ou acentos.

6. Copiando os arquivos do repositório para a pasta do site

Agora vamos começar a criar o git-hook que será responsável por copiar todos os arquivos – do repositório bare – para a pasta onde o site vai rodar, no ambiente de produção:

$ cat > hooks/post-receive
#!/bin/sh
GIT_WORK_TREE=/var/www/meusite.com.br git checkout -f
$ chmod +x hooks/post-receive

7. Adicionando o repositório ao seu projeto

Agora é so voltar na sua máquina e adicionar o repositório no seu projeto:

$ git remote add web ssh://meusite.com.br/home/usuario/website.git
$ git push web +master:refs/heads/master

8. Finalizando

Finalizados os passos acima esta tudo pronto agora basta você fazer um commit e em seguida dar push para o repositório remoto com o seguinte comando:

$ git push web

Deixe uma resposta