maneira oficial de backup ao vivo git

1

Não consigo encontrar um guia oficial sobre como fazer backup de um repositório git "ao vivo".

O primeiro resultado no google quando você pesquisa algo assim é:

link

Mesmo os usuários do KDE estavam usando uma abordagem que levou ao desastre:

link

Eu posso ler respostas para stackoverflow, serverfault, blogs ... mas parece que há muita confusão. E esse diabo está nos detalhes: minha compreensão do "incidente do KDE" é que eles deveriam executar git fsck após git clone , pois git clone não verifica erros (mas, novamente, nada sobre isso em o manual do git ...)

Então: qual é a maneira oficial de fazer o backup de um repositório git ao vivo? Há algo disponível no manual sobre backup?

    
por Leo 11.05.2015 / 09:12

1 resposta

2

git bundle é útil aqui. Eu tenho usado isso por um tempo agora:

base_dir=/home/git
for gitrepo in 'ls -d *.git'
do
 echo '**********[' ${gitrepo} ']***********'
 repo_name=${gitrepo%.git}
 echo cd ${base_dir}/${gitrepo}
 cd ${base_dir}/${gitrepo}
 backup_cmd="git bundle create /opt/git-backups/${repo_name}.bundle master"
 verify_command="git bundle verify /opt/git-backups/${repo_name}.bundle master"
 backup_cmd_all="git bundle create /opt/git-backups/${repo_name}-all.bundle --all"
 verify_command_all="git bundle verify /opt/git-backups/${repo_name}-all.bundle "
 echo -------- master only -------------------
 ${backup_cmd}
 echo -------- all -------------------
 ${backup_cmd_all}
 echo
 echo
done

A chave é testar tudo, restaurando-o em um servidor de teste a cada poucas semanas. Envolva alguns registros em torno disso e obtenha relatórios cada vez que você usá-los, registre as somas de verificação dos arquivos gerados, quanto tempo cada um demorou etc. Quando o mundo estiver em chamas ao seu redor e você precisar restaurar a preparação agora poupar muita dor de cabeça.

Lembre-se: não foi feito backup até que tenha sido restaurado.

Não tenho certeza se existe alguma forma "oficial" de fazer backup de um repositório do git, há várias maneiras de fazer backup de um repositório do git, tar, zip, despejo de sistema de arquivos etc., vai depender muito de coisas como o tamanho da janela de backup.

    
por 11.05.2015 / 09:20

Tags