2010-05-21 34 views

Trả lời

149

Trên Linux, nếu bạn chỉ muốn xem các xung đột, hãy chuyển trạng thái qua grep.

svn status | grep -P '^(?=.{0,6}C)' 
+5

Thêm '-A 1' vào đối số grep sẽ hiển thị cho bạn dòng sau dòng xung đột, đôi khi liên quan đến cuộc xung đột. –

+0

@ N13 +1 cho câu trả lời. Sẽ tốt hơn nếu bạn mô tả chi tiết. Giống như những gì là -P '^ (? =. {0,6} C)'. – Workonphp

+4

-P cho [grep] (http://unixhelp.ed.ac.uk/CGI/man-cgi?grep) sử dụng perl regex,^= bắt đầu chuỗi, (? =) Kèm theo [lookahead] (http : //www.regular-expressions.info/lookaround.html) mẫu là. {0,6} bất kỳ 0 đến 6 ký tự và chữ C, là chỉ báo cho xung đột – Pete

11

Bạn có thể thử svn merge -r <revision> --dry-run và xem điều gì xảy ra theo cách đó.

+0

doesn' t dường như làm việc trên Windows với svn 1.7.8. Nhật ký lỗi: svn: E205001: Hãy thử trợ giúp 'svn' để biết thêm thông tin svn: E205001: Hợp nhất nguồn bắt buộc – kakyo

1

Có thể sử dụng svn merge --dryrun trong khi chỉ định URL của kho lưu trữ với tất cả sửa đổi sau lần sửa đổi mới nhất mà bạn đã cập nhật.

Ví dụ: nếu WC hiện tại của bạn dựa trên bản sửa đổi 147, điều này có thể làm điều đó:

svn merge -r 148:HEAD http://url.to.repo/repo/ 

Không có gì tôi đã tự làm, vì vậy bạn sẽ phải tự mình thử.

3

Nếu bạn đã sáp nhập, bạn có thể sử dụng

svn status 

và thấy một chữ hoa "C" cho cuộc xung đột, nhưng thường bạn không nên thấy loại như vậy trong bản sao làm việc của bạn.

21

Chỉ cần sử dụng grep!

svn st | grep '^C' 
+1

Nó hoạt động .. biểu tượng^nghĩa là gì? –

+2

@sid, đó là cụm từ 'bắt đầu bằng', nghĩa là ký tự đầu tiên là C –

+1

Tôi đã suy nghĩ xem điều này có thể bỏ sót các tệp có trạng thái "A + C" hay không .. Đó có phải là vấn đề không .. – Raghav

-1

trên mac

$ svn status | grep -e '^!' 

đã làm công việc

đây là người đàn ông cho grep:

sử dụng: grep [-abcDEFGHhIiJLlmnOoqRSsUVvwxZ] [-A num] [- B num] [-C [num]] [mẫu] [-f tệp] [- tệp nhị phân = giá trị] [--color = when] [--context [= num]] [- directo ries = hành động] [--label] [--line đệm] [--null] [mẫu] [file ...]

+0

Làm thế nào để phù hợp với một dấu chấm than sẽ giúp tìm kiếm các mục mâu thuẫn? – anddam

+0

'^!' Là regex cho mỗi dòng bắt đầu bằng '!'. Tất cả các dòng mâu thuẫn bắt đầu bằng '! ' – thesummersign

+1

Không, tôi vừa giải quyết các xung đột trên 1.9 repo và các đường xung đột bắt đầu chỉ bằng" C ". – anddam

2

Đối với Windows PowerShell sử dụng:

svn status | sls -Pattern '^(?=.{0,6}C)' 
Các vấn đề liên quan