Existe alguma diferença entre git-http-backend e configurações simples de hospedagem de repositório dav?

1

Em algumas pesquisas, encontrei duas abordagens ligeiramente diferentes sobre como servir um repositório git em vez de http.

O primeiro está usando apenas DAV. O segundo usa DAV e git-http-backend.

Existe alguma diferença entre as abordagens acima?

    
por Herberth Amaral 02.03.2011 / 13:44

1 resposta

2

Sim, o primeiro método é muito ineficiente, e é por isso que o segundo método foi criado. Ao usar o antigo método de transporte 'mudo', o git não pode solicitar objetos específicos de um servidor, ele só pode descobrir o que o arquivo de pacote contém o objeto que ele precisa e baixar o arquivo de pacotes inteiro .

O transporte mais antigo 'burro' também nunca foi realmente destinado a empurrar mudanças para o servidor. Era possível, mas ninguém usou e todos sabiam que era ruim, por isso nunca recebeu muita atenção dos desenvolvedores.

Além disso, se você reexaminar a página do manual git-http-backend que você vinculou, você notará que ele não usa DAV. Os exemplos criam uma configuração compatível com versões anteriores para que os clientes git mais antigos ainda possam ter acesso de leitura, mas apenas os clientes mais novos teriam acesso de gravação. Não sei se é possível configurá-lo para que git-http-backend e DAV sejam usados juntos para que novos e antigos clientes possam ter acesso de gravação, mas eu nem recomendaria tentar isso.

A realidade é que o uso do antigo método 'burro' precisa morrer e ser substituído pelo método 'inteligente' sempre que possível.

Para uma melhor explicação das diferenças entre os métodos de transporte 'burro' e 'inteligente', leia esta excelente página (completa com fotos!) do autor do livro ProGit.

link

    
por 02.03.2011 / 19:01