Nesse ponto, você deve ser capaz de fazer a maioria das suas tarefas diárias usando Git. Contudo, para fazer qualquer colaboração no Git, você precisará de um repositório remoto Git. Embora tecnicamente você possa enviar e baixar alterações de repositórios individuais, isso é desencorajado porque você provavelmente confundirá o que está sendo trabalhando em cada um deles se você não for cuidadoso.
Além disso, você quer que seus colaboradores sejam capazes de acessar seu repositório mesmo se seu computador estiver offline - geralmente é útil ter um repositório comum mais confiável. Portanto, o método preferido para colaborar com alguém é definir um repositório intermediário que vocês possam enviar e baixar dele.
Executar um servidor Git é bastante simples. Primeiro, você escolhe quais protocolos de comunicação que você quer que seu servidor utilize. A primeira seção desse capítulo cobrirá os protocolos disponíveis e seus prós e contras. As próximas seções explicarão algumas configurações típicas usando estes protocolos e como fazer seu servidor executá-las. Por último, nós veremos algumas opções de hospedagem, caso você não se importe de hospedar seu código no servidor de outra pessoa e não quiser lidar com problemas configurando e mantendo seu próprio servidor.
Se você não tem interesse em executar seu próprio servidor, você pode pular para a última seção deste capítulo para ver algumas opções para configurar uma conta hospedada e passar para o próximo capítulo, onde nós discutimos vários prós e contras de trabalhar em ambientes de controle de código distribuídos.
Um repositório remoto geralmente é repositório vazio (bare repository) - um repositório Git que não tem um diretório de trabalho. Porque o repositório é usado apenas como ponto de colaboração, não há razão para ter uma cópia verificada em disco; são apenas dados do Git. Simplificando, o repositório vazio (bare repository) é o conteúdo do diretório .git
do seu projeto e nada mais.
Você tem várias opções para ter um repositório remoto Git executando para que você possa colaborar com outras pessoas e compartilhar seu trabalho.
Executar seu próprio servidor te proporcional muito controle e permite que você execute seu servidor por seu próprio firewall, mas é esse tipo de servidor geralmente requer bastante de seu tempo para configuração e manutenção. Se você colocou seus dados em um servidor hospedado é fácil configurar e manter, contudo, você tem que manter seu código no servidor de terceiros, mas algumas organizações não permitem isso.
Isso deve ser o bastante para determinar qual solução ou combinação de soluções é apropriada para você e seus colaboradores.