Tôi muốn giữ các máy chủ Mercurial tại bốn địa điểm khác nhau và muốn chúng giống hệt nhau tại bất kỳ thời điểm nào. Có nghĩa là, bất kỳ thay đổi nào đối với bất kỳ trong số chúng phải được truyền cho tất cả các máy chủ khác. Làm thế nào để làm điều đó?Làm cách nào để đồng bộ hóa hai hoặc nhiều máy chủ Mercurial?
8
A
Trả lời
8
Bạn có thể thêm hành động trên máy chủ bằng móc incoming
.
Móc cho phép bạn tự động hóa tác vụ khi sự kiện xảy ra trên kho lưu trữ. Bất cứ khi nào bạn nhận được một đẩy vào kho lưu trữ, bạn có thể đẩy vào gương của bạn là tốt.
Thông tin thêm về móc: http://hgbook.red-bean.com/read/handling-repository-events-with-hooks.html
Các vấn đề liên quan
- 1. Làm cách nào để đồng bộ hóa hai quy trình?
- 2. Làm thế nào để đồng bộ hóa hai kho Subversion?
- 3. Làm cách nào để đồng bộ hóa cuộn của hai hộp văn bản nhiều dòng?
- 4. Java: đồng bộ hóa các chủ đề trên nhiều máy chủ
- 5. Làm cách nào để đồng bộ hóa đồng hồ của máy tính khi khởi động?
- 6. Làm cách nào để chạy máy chủ Mercurial?
- 7. Sở thú vs máy chủ đồng bộ hóa redis
- 8. Làm cách nào để đồng bộ hóa dữ liệu cục bộ được lập chỉ mụcDB với Máy chủ?
- 9. Làm cách nào để đồng bộ cuộn với nhiều UIScrollView?
- 10. Đồng bộ hóa các chỉ mục Lucene.net trên nhiều máy chủ ứng dụng
- 11. Làm cách nào để đồng bộ hóa nhiều lần tải Backbone.js?
- 12. Đồng bộ hóa trò chơi nhiều người
- 13. Cách đồng bộ hóa hai kho lưu trữ git
- 14. Làm cách nào để thiết lập đồng bộ hóa đồng bộ trong đám mây (AWS, heroku, v.v ...) trên nhiều nút?
- 15. Làm thế nào để nhiều máy chủ hoạt động đồng bộ với ứng dụng web?
- 16. Đồng bộ hóa (đồng hồ) giữa hai máy tính từ xa
- 17. Làm thế nào để đồng bộ hóa danh sách python?
- 18. Làm thế nào để đồng bộ hai bảng MySQL?
- 19. Đồng bộ nhiều chủ đề trong python
- 20. Đồng bộ hóa chủ đề đơn giản
- 21. đồng bộ hóa hai cơ sở dữ liệu pg
- 22. Đồng bộ hóa DB cục bộ lớn với máy chủ DB (MySQL)
- 23. Làm thế nào để đẩy mã vào nhiều máy chủ của Mercurial?
- 24. Làm cách nào để đồng bộ hóa cài đặt Chia sẻ lại giữa các máy tính?
- 25. Làm cách nào để đồng bộ hóa hai Cơ sở dữ liệu Oracle?
- 26. Làm cách nào để đồng bộ hóa vị trí cuộn của hai div?
- 27. ASP.NET: Đồng bộ hóa quy tắc xác thực phía máy khách và phía máy chủ
- 28. Đồng bộ hóa cơ sở dữ liệu MySQL betwen hai máy chủ bằng cách sử dụng PHP
- 29. Android Cách đồng bộ hóa hai tác vụ Async?
- 30. Đồng bộ hóa, Khi nào hoặc không sử dụng?
Bạn nên sử dụng móc 'changegroup' thay vì móc 'đến'. Điều đó sẽ đẩy tất cả các csets cùng một lúc thay vì chạy hook một cho mỗi cset. –
Điều gì sẽ xảy ra nếu ai đó đẩy vào một trong những chiếc gương cùng lúc với ai đó đẩy người khác. Nếu tất cả các tấm gương chỉ đẩy vào nhau thì có vẻ như người ta sẽ có điều kiện chủng tộc, nơi mà những cú đẩy sẽ thất bại. Cảm ơn. – DRayX
Ah, vâng, đó là lý do tại sao bạn chỉ đẩy vào một repo. Ý tưởng của một tấm gương là có một bản sao lưu. Bạn không bao giờ thức dậy và nói "Tôi sẽ cạo râu vào ngày hôm nay? Cái tay tôi được gắn vào hay cái nào trong gương?" Ít nhất, tôi hy vọng bạn không. :) Vì vậy, mọi thứ chỉ nên được kiểm tra * trong * đối với một trong các máy chủ đó. Điều này là ổn, bởi vì bạn có thể đọc 1000x nhiều hơn viết cho repo của bạn. (Lịch sử, khác biệt, thay đổi chi nhánh, vv) Vì vậy, nếu máy chủ "chính" ở xa và một checkin hơi chậm hơn, không ai sẽ bao giờ chú ý! Tôi hi vọng cái này giúp được! – leoger