Estou trabalhando em um projeto que usa o GIT como o principal sistema de controle de versão para o tronco, as filiais oficiais e a maioria dos subprojetos / filiais não oficiais. Como tal, desejo que minha própria filial use o GIT para permitir que o restante da comunidade acesse minha filial usando o sistema que eles conhecem.
No entanto, estou trabalhando em uma parte do projeto que se sobrepõe a ramos oficiais e não oficiais, além de alguns patches que nunca entrarão no tronco - portanto, preciso manter meus patches separados, permitindo que todos sejam usados em meu ramo e remendos seletivos para serem usados no porta-malas. Isso naturalmente se inclina para o uso de filas mercuriais.
Existe alguma razão para eu não poder usar o mercurial para o meu próprio repositório local, mas enviar a totalidade para os repositórios hospedados no GIT e no Mercurial? Ou melhor, existe algum bom motivo para não fazê-lo, tenho certeza que é possível.
fonte
Respostas:
Você não deve fazer isso pelo mesmo motivo que não deve ter uma variável que tente rastrear o estado de outra - poderá perder o controle de qual versão é autorizada.
fonte
Atualmente, faço isso usando git e svn. Embora haja razões para não fazer isso, não há regra geral. O Git pode fazer coisas que o svn não pode, estou acostumado a esses recursos, portanto meu fluxo de trabalho aumenta a produtividade quando posso usar o git. Olhando para os prós e os contras da minha situação, eu seria estúpido em não usar os dois. Você deve olhar para a sua situação da mesma maneira. (entre os únicos contras para mim estão tendo que executar um único script minúsculo para sincronizar o git com o svn)
fonte
Você pode manter seus patches separados no Git: faça cada um em sua própria ramificação e depois mesclá-los seletivamente, conforme desejado.
fonte