/ / É uma boa ideia colocar o Mercurial Repository na unidade de rede compartilhada? - controle de versão, mercurial

É uma boa ideia colocar o Mercurial Repository na unidade de rede compartilhada? - controle de versão, mercurial

Somos uma pequena equipe de 3 desenvolvedores (Boss, eu e outro desenvolvedor trabalhando principalmente remotamente), e tenho a tarefa de configurar um servidor de repositório para o Mercurial HG.

Parece que eu posso simplesmente colocar o nosso centralizadorepositório em uma unidade de rede compartilhada. Será extremamente fácil de configurar, mas parece que existe o risco de que qualquer um de nós possa abusar da conveniência de trabalhar / modificar o repositório de origem diretamente. É por isso que estou pensando em usar o servidor HgWebdir como uma forma de controlar o acesso ao repositório central. Portanto, o acesso direto ao repositório de origem central não é incentivado, mas a unidade compartilhada estará aqui apenas no caso.

Eu acho que é uma questão de definir o nosso in-houseprocedimento de controle de versão, não é realmente uma questão de controle de versão, mas eu ainda vou em frente e fazer a pergunta. Como não sinto que tenho experiência suficiente para tomar a decisão, e se não tenho 100% de certeza de que minha razão e seu significado são válidos, provavelmente é difícil reforçar a maneira como o sistema de controle de versão deve ser usado por outras pessoas. desenvolvedores.

Editar:

Eu posso ver que existem problemas em potencialpasta compartilhada trabalhando com software de controle de versão. Mas alguém se importa de explicar pouco mais o que aconteceu por trás da cena, quando empurra para pasta compartilhada? Meu entendimento é que a unidade compartilhada é essencialmente um link / atalho compartilhado, portanto, para uma unidade compartilhada, o Mercurial na máquina local tem apenas o bloqueio para esse link, mas o fato é que cada máquina do usuário poderia ter uma instância diferente do Mercurial. links "bloquear, enquanto a instância do Mercurial do servidor manterá seu próprio link na unidade física. Eu posso ver que é complicado, mas como vai falhar? Eu posso entender a conclusão, mas não posso ligar os fatos à conclusão

Respostas:

7 para resposta № 1

Você não deve colocar o repositório do Mercurial emuma pasta compartilhada em um servidor de rede, pois o Mercurial não pode reter confiantemente bloqueios em todas as situações em tal configuração, e durante os envios para aquele repositório central, os bloqueios são cruciais para evitar corromper o repositório.

Na verdade, eu removerei o "não encorajado" e o substituirei por "não é possível", e servir o repositório com o hgweb ou hg serve, o primeiro sendo a configuração recomendada para servidores de longa duração.


2 para resposta № 2

Se você tem um servidor centralizado, você pode instalarHgweb lá e empurre e puxe-o como uma fonte central e BACKED-UP. Ainda temos servidores Windows 2003 (não estou em posição de alterar isso) e com um pouco de pesquisa na Web consegui encontrar informações sobre como configurar uma hgweb em um servidor Windows, embora a maioria referisse-se ao Windows Server 2007.