2010-09-20 27 views
5

Tôi hiện đang sử dụng dấu phẩy hg diffmerge -r 32 -r 30 myfile, nhưng điều này chỉ hiển thị hai cửa sổ, không phải ba cửa sổ. Làm thế nào tôi có thể làm cho nó làm một cách hợp nhất ba cách?Làm cách nào để làm cho diffmerge thực hiện hợp nhất ba chiều với Mercurial?

.hgrc

[ui] 
merge=diffmerge 

[extensions] 
collapse=~/.hgext/collapse.py 
hgext.purge= 
hgext.extdiff= 
hgext.graphlog= 

[extdiff] 
cmd.diffmerge=/usr/bin/diffmerge 

[merge-tools] 
diffmerge.executable=/usr/bin/diffmerge 
diffmerge.args= --result=$output -t1="Local Version" -t2=$output -t3="Other Version" --caption=$output $local $base $other 
diffmerge.binary=False 
diffmerge.symlinks=False 
diffmerge.gui=True 
diffmerge.premerge=True 

Trả lời

3

Tôi cho rằng bạn có nghĩa là bạn đang sử dụng SourceGear DiffMerge như sáp nhập công cụ bên ngoài. .hgrc của bạn là gì? Nó có dựa trên số sample from hg website không?

Đoán của tôi là diffmerge.args của bạn có vấn đề. Bạn có thể thử chạy diffmerge theo cách thủ công với các đối số đó để đảm bảo nó hoạt động.


Với số .hgrc của bạn bây giờ đã rõ. Lệnh của bạn hg diffmerge -r 32 -r 30 myfile KHÔNG phải là lệnh hợp nhất, thay vào đó bạn yêu cầu hg sử dụng diffmerge làm công cụ tìm khác biệt bên ngoài (được chỉ định trong phần [extdiff]) để so sánh myfile giữa phiên bản 32 và 30. Không có phiên bản thứ 3 liên quan.

Để hợp nhất, bạn chạy hg merge [-r<the other head>] và kể từ khi .hgrc yêu cầu hg sử dụng diffmerge làm công cụ hợp nhất (được chỉ định trong phần [ui]) hg sẽ sử dụng diffmerge cho hợp nhất 3 chiều. Tôi xác minh rằng nó hoạt động trong thiết lập Windows của tôi với hgrc giống hệt nhau.

Các vấn đề liên quan