2011-09-16 36 views
29

Kết hợp svn diff --ignore-eol-style và --ignore-tất cả các không gian không hoạt động:Làm thế nào tôi có thể bỏ qua thay đổi eol và tất cả không gian màu trắng trong svn?

$ svn diff -x -w --ignore-eol-style -r 1143:1177 somefile 
svn: invalid option: --ignore-eol-style 

Và,

$ svn diff -x --ignore-eol-style -x --ignore-all-space -r 1143:1177 somefile 

Chỉ thực hiện lựa chọn cuối cùng: bỏ qua tất cả các-- không gian

Có ai xử lý vấn đề này trước đây không?

Trả lời

41

Lệnh svn dường để chỉ tôn vinh một tuỳ chọn-x. Điều này có nghĩa, bạn phải/có thể kết hợp tất cả tùy chọn vào một luận:

svn diff -x "-w --ignore-eol-style" 

tôi không kiểm tra xem điều này cũng đúng cho diff-công cụ bên ngoài.

+2

Chính xác những gì tôi cần! –

+1

Nếu bạn nhận được 'diff: unrecognized option '--ignore-eol-style'' sử dụng dạng ngắn thay thế:' svn diff -x -w' – Lucas

+1

Khi bạn cũng muốn loại bỏ bất kỳ dòng mới được giới thiệu hoặc loại bỏ bạn nên sử dụng một bên ngoài chương trình khác và thêm một số tùy chọn 'svn diff --diff-cmd '/ usr/bin/diff' -x '-u -giao diện-tất-cả-không-dấu-dòng-trắng' path1 path2' (-u cho phong cách thống nhất như svn diff) –

1

Bạn có thể sử dụng công cụ phân biệt bên ngoài với các tùy chọn thích hợp (diff-cmd tùy chọn trong cấu hình SVN). Kiểm tra this. Sau đó, bạn có quyền tự do để thiết lập bất kỳ công cụ khác biệt và cung cấp các đối số cho nó. Bạn cũng có thể sử dụng nó trực tiếp:

svn diff --diff-cmd /usr/bin/diff --extensions "-b" -r 1143:1177 somefile 

nơi -b để bỏ qua khoảng trắng ở cuối dòng và xem xét tất cả các chuỗi khác của một hoặc nhiều ký tự trắng không gian là tương đương,

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