Se você leu o meu último post sobre o Git, já deve ter percebido que o Git é um sistema muito poderoso e que facilita o trabalho em equipe ao fornecer recursos para facilitar isso, como branches e registro do autor de cada commit. No mesmo post, eu ainda apresentei o fato que torna o Git distribuído: A possibilidade de usar qualquer repositório git em um computador remoto para sincronizar o conteúdo do seu repositório local, e como isso poderia permitir o uso do git como um sistema P2P.
Pois bem, é verdade que é possível usar o Git como um sistema P2P, mas isso não é muito prático, pois o não implementa uma forma de "consenso" nesse estilo de requisição, ou seja, você pode sincronizar repositórios Git entre duas máquinas (como entre o seu computador e um servidor, por exemplo), tranquilamente, mas se o número de máquinas é maior que dois, a situação começa a complicar.
Devido a isso, é comum o uso do Git com sistemas de hospedagem de repositórios, que funcionam como uma "central" no qual os repositórios são armazenados (servindo também como backup, portanto) e que serve como meio de sincronização entre 2 ou mais máquinas possuindo um determinado repositório Git. E hoje, vou falar um pouco sobre as variadas opções que temos disponíveis, e ensinar como integrá-las com o seu repositório git feito no post anterior.
(mais…)