Je souhaite conserver les serveurs Mercurial à quatre emplacements différents et je souhaite qu'ils soient identiques à tout moment. En d'autres termes, toute modification de l'un d'entre eux doit être propagée à tous les autres serveurs. Comment faire ça?Comment synchroniser deux ou plusieurs serveurs Mercurial?
8
A
Répondre
8
Vous pouvez ajouter une action sur le serveur avec un crochet incoming
. Les crochets vous permettent d'automatiser les tâches lorsque des événements se produisent dans le référentiel. Chaque fois que vous obtenez une poussée dans le référentiel, vous pouvez également pousser vers vos miroirs.
Plus sur crochets: http://hgbook.red-bean.com/read/handling-repository-events-with-hooks.html
Questions connexes
- 1. Comment synchroniser deux NSManagedObjectContext
- 2. Comment synchroniser plusieurs travailleurs Workling?
- 3. Comment synchroniser deux dépôts Subversion?
- 4. Comment synchroniser deux MediaPlayers ou MediaElements dans WPF?
- 5. Comment synchroniser deux dossiers (sur différents serveurs) après un téléchargement ASP (classique)
- 6. Comment synchroniser deux structures de fichiers locaux?
- 7. Comment rejeter les deux ou plusieurs dismissModalViewController?
- 8. Comment synchroniser deux répertoires avec Perl?
- 9. synchronisation sur deux ou plusieurs objets (Java)
- 10. JPA avec plusieurs serveurs
- 11. Demande deux serveurs différents
- 12. Comment combiner deux projets dans Mercurial?
- 13. Communication entre plusieurs serveurs
- 14. fusionner deux ou plusieurs révisions
- 15. Deux ou plusieurs éditeurs tinymce
- 16. synchroniser deux SQL Server 2005
- 17. Comment puis-je synchroniser plusieurs NSManagedContext?
- 18. Mercurial ou Git
- 19. Comment créer plusieurs serveurs de jeu?
- 20. Connexion à plusieurs serveurs Web
- 21. Plusieurs référentiels Mercurial ou un seul avec des clones
- 22. La communication entre deux serveurs
- 23. Synchroniser deux SqlExpress en utilisant NHibernate
- 24. Synchroniser l'heure entre les serveurs sans connexion Internet
- 25. Synchroniser la position de deux vues ScrollView
- 26. Façon de synchroniser deux cœurs en simulation
- 27. Synchroniser deux bases de données SQL Server
- 28. Asp.net Webapplication sur plusieurs serveurs
- 29. Évaluation en deux ou plusieurs listes
- 30. Modèle reliant deux ou plusieurs collections
Vous êtes mieux à l'aide du crochet de « changegroup » au lieu du crochet « entrant ». Cela va pousser tous les csets à la fois au lieu d'exécuter le crochet un pour chaque cset. –
Que se passe-t-il si quelqu'un pousse à l'un des miroirs en même temps que quelqu'un pousse à l'autre. Si tous les miroirs se poussent l'un vers l'autre, il semble que l'on obtiendrait des conditions de course où les poussées échoueraient. Merci. – DRayX
Ah, oui, c'est pourquoi vous ne faites que pousser à un repo. L'idée d'un miroir est d'avoir une sauvegarde. Vous ne vous réveillez jamais et dites: "Quel visage vais-je me raser aujourd'hui, celui auquel mes mains sont attachées ou celui dans le miroir?" Au moins, j'espère que non. :) Par conséquent, les choses ne devraient jamais être vérifiées * dans * à l'un de ces serveurs. C'est correct, parce que vous faites probablement 1000x plus de lecture que d'écrire à votre repo. (Historique, diffs, changements de branche, etc.) Donc, si le serveur "primaire" est loin et qu'un checkin est un peu plus lent, personne ne le remarquera! J'espère que ça aide! – leoger