Fluxo de trabalho para sincronizar repositórios do Mercurial via email com pacotes configuráveis

Eu tenho dois diretórios em dois computadores diferentes - máquinaA (Windows) e máquinaB (OSX) - e quero manter os dois diretórios via Mercurial sincronizados. [*]

A restrição é que as duas máquinas não estão conectadas via LAN / WAN;a única maneira de mover dados entre eles é por email. Então pensei em enviar e-mailsPacotes mercuriais como deltas poderiam fazer o truque.

Meu fluxo de trabalho atual é aproximadamente isso (usando uma tag locallcb para o último pacote de alterações):

Digamos que eu trabalho na máquinaA. No final do dia eu faço:

hg commit -A -m "changes 123"
hg bundle --base lcb bundle_123.hg
hg tag --local -f lcb --rev tip

finalmente, então eu envio esse pacote para a máquinaB.

Então sentado na máquinaB eu faço

hg unbundle bundle_123.hg
hg merge
hg commit -A -m "remote changes 123"
hg tag --local -f lcb --rev tip

Agora estou trabalhando na máquinaB e no final do dia eu faço o que está listado em 1., mas na máquinaB. E o ciclo continua ...

No entanto, estou preocupado que este sistema não seja robusto o suficiente:

Alterações intermediárias: O que acontece quandodepois de criando um pacote (Etapa 1) eantes aplicando-o remotamente (Etapa 2), ocorre uma alteração na máquina remotaB? Eu tive um caso em que apenas substituímos as alterações pelo novo pacote sem aviso de conflito ou sugestão de mesclagem.

Aplicação dupla do pacote: O que acontece quando, por acidente, um pacote é aplicado duas vezes? Seria necessário registrar os pacotes configuráveis de alguma forma com tags locais?

Ou existe outro fluxo de trabalho melhor para transferir deltas do Mercurial por email?

[*] Deresponder a uma pergunta de superusuário Imaginei que o Mercurial fosse a maneira mais viável de fazer isso.

questionAnswers(2)

yourAnswerToTheQuestion