Fazendo backup de um servidor Git completo

1

Eu tenho um CentOs 7.1 e um Git Server instalado nele.

O Git Server é configurado com chaves SSH para que os usuários precisem de uma passphrase e uma chave privada para conectar para o servidor.

Existem atualmente 7 repositórios, com os quais os usuários se comprometem frequentemente.

A administração do Git-Server é feita pela ferramenta gitolite-admin .

Eu quero criar um backup do Git Server, incluindo todos os repositórios e todas as configurações.

Eu sei que o cronjobs pode ser usado para isso, mas não tenho certeza se é melhor clonar os repositórios ou zip / tar todas as pastas relacionadas ao git em um arquivo.

Como fazer isso corretamente?

    
por kiltek 21.12.2015 / 14:56

2 respostas

1

Melhor é subjetivo, dependendo do seu ambiente e objetivos. Usar git ou tar / gzip produzirá um backup.

Use o comando gitolite writable para desativar os pushes para todos os repos ou um repositório específico ao usar o tar / gzip ou outra ferramenta de backup nativa. Isso impedirá gravações no repositório durante o backup. Seu backup será corrompido se você pular essa etapa e alguém gravar no repositório durante os backups.

Execute gitolite writable -h para uso detalhado. Veja a documentação do gitolite para obter mais informações link

    
por 21.12.2015 / 15:35
-1

Você pode usar o rsync para copiar todo o servidor, tar e armazená-lo. Meu conselho seria armazená-lo em um servidor externo (BackBlaze B2, por exemplo).

Aqui alguns exemplos de rsync:

Rsync por SSH:

rsync -avzhe ssh [email protected]:/root/install.log /tmp/

Se você quiser fazer uma adição de execução a seco --dry-run . Se você deseja replicar o servidor, os arquivos excluídos precisam ser excluídos no sistema de destino, adicione -delete para isso.

Mais exemplos de rsync: link

    
por 21.12.2015 / 15:36