2010-07-16 6 views

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

+2

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. –

+0

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

+3

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

Questions connexes