Skip to content

Instantly share code, notes, and snippets.

@webarthur
Last active July 14, 2016 06:05
Show Gist options
  • Save webarthur/0b7e22685c123f681c2111c892929139 to your computer and use it in GitHub Desktop.
Save webarthur/0b7e22685c123f681c2111c892929139 to your computer and use it in GitHub Desktop.
Configurando um servidor para atualizar/publicar sites via Git (deploy)
# Adiciona um usuário para fazer acesso remoto
adduser gituser
# Adiciona um grupo chamado git
addgroup git
# Adiciona o usuário "gituser" ao grupo git
usermod -a -G git gituser
# Acesse pasta desejada e crie um novo repositório
git init
# Cria um hook para atualizar os arquivos no servidor quando forem transferidos
# ... o comando cat vai gerar um arquivo, você ir colando o código e no final precionar Ctrl+D para sair
cat > .git/hooks/post-receive
#!/bin/sh
GIT_WORK_TREE=/var/www/www.example.org git checkout -f
(Ctrl+D)
# Adiciona permissões de escrita ao hook
chmod +x .git/hooks/post-receive
# Configura o repositório para permitir a publicação remota
# ... caso precise mexer nos arquivos pelo servidor, é preciso mudar para "false"
git config --bool core.bare true
# Adiciona usuário/grupo como dono a todos os arquivos da pasta "exemplo.org"
# ... troque "exemplo.org" pela pasta que foi instalado o git
chown -R gituser:git exemplo.org/
# Agora ficou fácil! Basta clonar, realizar as modificações e mandar ver no git push
## git clone ssh://gituser@host.xyz/var/www/exemplo.org
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment