Simple push / pull entre dos repositorys "cliente" para compartir cambios

Estoy en el process de implementar más correctamente Source Control a través de Mercurial en el trabajo y me encontré con una situación. Mi entorno es dos progtwigdores con un server y aproximadamente 4 computadoras dev. Existen nuestros 2 escritorios de Office donde ocurre la mayor parte de la escritura de códigos. Y luego hay 2 computadoras portátiles utilizadas en los laboratorios para probar y depurar.
Anteriormente, solo habíamos estado operando a través de la networking; los proyectos de código vivían en el server y tanto mi oficina como el equipo portátil del laboratorio abrieron los files a través de la networking . Sí, sé que no fue la mejor de las ideas, pero lo hicimos funcionar. Pasar a un model más correcto de DVCS con repos locales me presenta un problema: ¿Cómo obtengo las actualizaciones de mi código de mi Office donde estaba escribiendo en el laboratorio para poder progtwigr un chip real? Siento que este nivel de cambios (10, 20, 50, tal vez incluso 100 pequeños cambios en el transcurso de un día de desarrollo) no necesita pasar por el Servidor. La opinión personal es que los compromisos con el Servidor deben reservarse para cuando realmente esté listo para compartir lo que tengo con otros … no necesariamente finalizado con el proyecto, solo listo para compartir en donde estoy.

¿Debo push al Servidor y luego pull a la Computadora Portátil cada vez?
¿Puedo simplemente push/pull retroceder entre mi Office y los repositorys portátiles de Lab? ¿Cómo podría configurar esa connection?

Bajo el supuesto de que el "Servidor" es una emulación CVCS en el entorno DVCS (es decir, push target | pull source para todos los intercambios de datos exclusivamente) y antipattern "always working single branch" no utilizado :

Cada Dev-host trabaja con al less dos twigs con nombre: personal (para WIP) y compartido (merge-target) "pnetworkingeterminado". WIP tiene que enviarse al server, a todos los demás serveres. Sincronizar el repository local con todo el repository del server (pero la "fuente autorizada" es solo la twig pnetworkingeterminada).

Modelo DVCS puro

Excepto "Servidor" como ruta pnetworkingeterminada, cada host Dev tiene 3 inputs adicionales para otros lugares de trabajo del Dev y el model de solo extracción utilizado para simplificar (sin ACL adicional y reglas para empujones). Es decir (con comunicación humana) server http local ( hg serve ) activado en la (s) fuente (es) bajo demanda y en el desarrollador objective hg pull ANOTHERDEV . El server de origen puede 'detenerse después de esto. Las sucursales personalizadas no es mala idea en este caso también

Nota: `hg serve se puede habilitar siempre en los 4 dev-hosts, command de extracción combinado (pull 3 otros repos) x se puede definir como alias en cada host y se usa cuando sea necesario, sin negociación adicional