Esta dica explicará como configurar git e push para git para atualizar seu site.
Nota:
Você deve ter suas chaves ssh já configuradas em seu servidor.
Instalando git em seu servidor
execute sudo apt-get update
então sudo apt-get install git-core
Isso é tudo o que é necessário para instalar o git.
Adicionar um usuário
Para adicionar uma execução do usuário sudo adduser git
(git é o nome de usuário, pode ser qualquer coisa)
Agora você precisa adicionar sua chave ssh pública às chaves autorizadas dos usuários:sudo mkdir /home/git/.ssh
sudo cp ~/.ssh/authorized_keys /home/git/.ssh/
sudo chown -R git:git /home/git/.ssh
sudo chmod 700 !$
sudo chmod 600 /home/git/.ssh/*
Adicionar um repositório
Em primeiro lugar, faça login como o usuário git com login git
Você deve então criar seu repositório e inicializá-lo:
Isso pressupõe que você está no diretório inicial.
mkdir myrepo.git
cd myrepo.git
git --bare init
Faça git atualizar seu site
Supondo que seu site esteja armazenado em, /var/www/example.com
faça o seguinte:
Você ainda deve estar no myrepo.git
diretório, edite, você precisa editar seu arquivo de post hooks como:
vim hooks/post-receive
e digite o seguinte:
#!/bin/sh
GIT_WORK_TREE=/var/www/example.com git checkout -f
Agora defina as permissões: chmod +x hooks/post-receive
Configurando o repositório local
Supondo que você tenha git instalado em sua máquina, crie um novo diretório e inicialize-o com git init
Adicione um arquivo com algum conteúdo como: echo 'hello world' > index.html
adicione e confirme o arquivo:
git add index.html
git commit -q -m "first commit."
Em seguida, você precisa configurar o controle remoto assim:
Para o seguinte, substitua server.com por ip ou domínio.
git remote add web ssh://git@server.com/home/git/myrepo.git
Agora você precisa enviar para o servidor com git push web +master:refs/heads/master
e deve ser isso, seu site agora mostrará seu arquivo index.html.
Em atualizações futuras apenas execute git push web
obrigado