Tôi e rằng không có khả năng gỡ lỗi tích hợp cho việc này. Những gì tôi làm khi viết một cái móc là để thiết lập hai kho địa phương:
$ hg init repo
$ hg clone repo clone
và sau đó cấu hình móc changegroup
trong repo
. Bây giờ, hãy đi vào clone
và làm
$ echo a > a
$ hg add a
$ hg commit -m 'a file'
để thiết lập clone
. Mỗi khi tôi muốn kiểm tra móc, tôi chạy
$ hg push; hg -R ../repo rollback
bên trong clone
. Tôi giữ nó trong lịch sử dòng lệnh của mình để tôi có thể chỉ cần bấm ↑ + Trả lại để thực hiện nó lặp đi lặp lại. Các hg rollback
là chìa khóa: có hiệu quả hủy bỏ các hg push
để tôi có thể lặp lại nó một lần nữa và một lần nữa.
Bạn dĩ nhiên sẽ cần phải điều chỉnh điều này khi cần thiết cho móc của mình. Nếu móc kiểm tra tên người gửi, sau đó sử dụng hg commit -u someone
để đặt điều này nếu cần. Nếu hook cần nhiều hơn một changeset trong changegroup, sau đó thực hiện hai hoặc nhiều commit trước khi push - rollback sẽ xử lý việc loại bỏ tất cả các changeset được đẩy. Nếu móc được điều hành bởi hgweb
, sau đó chạy
$ hg serve --config 'web.push_ssl=no' --config 'web.allow_push=*'
trong một thiết bị đầu cuối để phục vụ repo
trong khi bạn đẩy nó trong thiết bị đầu cuối khác.
Nguồn
2012-03-06 23:11:58
Xin cảm ơn, điều đó đơn giản hóa cách tôi thực hiện theo nhiều cách! :) –