2010-10-25 20 views
66

Ai đó có thể xin giải thích sự khác biệt giữa hai lựa chọn sau đây của Rùa SVN trên các tập tin mâu thuẫn:Tortoise SVN: Giải quyết xung đột bằng cách sử dụng 'của họ'. Nó có nghĩa là gì?

  • xung đột Giải quyết sử dụng 'họ'.
  • Giải quyết xung đột bằng cách sử dụng 'của tôi'.

Lưu ý phụ. Tại sao trên trái đất không ai từng báo cáo việc sử dụng thuật ngữ khó hiểu này là lỗi?

+9

IMHO, đây là phần thuật ngữ trực quan nhất trong toàn bộ mớ hỗn độn SVM. –

+7

Không có hành vi phạm tội, nhưng tôi đã không tìm thấy điều này gây nhầm lẫn ở tất cả. – Bernard

+3

Sự nhầm lẫn có lẽ là do không hiểu bối cảnh "của họ" và "của tôi" –

Trả lời

51

Giải quyết xung đột bằng cách sử dụng 'của họ' có nghĩa là khi bạn thử kiểm tra hai tệp có các chỉnh sửa xung đột, SVN sẽ hủy thay đổi của bạn và thay vào đó hãy sử dụng những người khác thay thế.

Giải quyết xung đột bằng cách sử dụng 'của tôi' có nghĩa là bạn sẽ hủy thay đổi của họ và sử dụng phiên bản của tệp thay thế.

+4

Kiểm tra hình ảnh giải thích rất nhiều về điều này: http://tortoisesvn.net/docs/release/TortoiseMerge_en/tmerge-basics-conflicts.html – Stefan

+2

Câu trả lời này không giải quyết sự mơ hồ xung quanh họ so với của tôi cả. Tôi vừa được yêu cầu hợp nhất các thay đổi từ một chi nhánh mà tôi đang làm việc trên một chi nhánh mà một người khác đang làm việc. Trong trường hợp này, những thay đổi mà tôi coi là 'của tôi' là những thay đổi từ chi nhánh của tôi. Tuy nhiên, nếu tôi chấp nhận những thay đổi 'của tôi', tôi sẽ thực sự loại bỏ những thay đổi từ chi nhánh của tôi. –

+0

Tôi không thấy "Giải quyết xung đột bằng cách sử dụng' mine' "ở bất kỳ đâu trong menu. Không có cách nào để đảm bảo các thay đổi của tôi được hợp nhất với các thay đổi của họ? – SearchForKnowledge

37

Tôi muốn thêm whole list cho referance thêm

(e) edit    - change merged file in an editor 
(df) diff-full  - show all changes made to merged file 
(r) resolved   - accept merged version of file 

(dc) display-conflict - show all conflicts (ignoring merged version) 
(mc) mine-conflict - accept my version for all conflicts (same) 
(tc) theirs-conflict - accept their version for all conflicts (same) 

(mf) mine-full  - accept my version of entire file (even non-conflicts) 
(tf) theirs-full  - accept their version of entire file (same) 

(p) postpone   - mark the conflict to be resolved later 
(l) launch   - launch external tool to resolve conflict 
(s) show all   - show this list 
29

Tôi đồng ý.

Dường như với tôi rằng nó sẽ được rõ ràng hơn nếu nó nói:

  • Giải quyết sử dụng kho (họ)
  • Giải quyết sử dụng lao động bản sao (mỏ)
+3

Theo tôi, câu trả lời hay nhất là xung đột có thể xảy ra mà không có người thứ hai tham gia (ví dụ: khi sử dụng luồng git với nhiều nhánh). – Christoph

+0

Bây giờ, "đánh dấu là đã giải quyết" làm gì? nó sử dụng của tôi hay của họ ?! –

+0

Nó chỉ xóa cờ xung đột và sử dụng trạng thái hiện tại của tệp được hợp nhất. Thông thường, bạn sẽ xem các xung đột và sửa bất kỳ vấn đề nào, sau đó đánh dấu nó là đã giải quyết. Hai tùy chọn được thảo luận trong câu hỏi này là các tùy chọn phím tắt để giải quyết xung đột bằng cách chỉ sử dụng phiên bản của bạn hoặc phiên bản trong repo. Làm điều này tự động đặt nó như là giải quyết trong khi khi bạn tự sửa chữa một cuộc xung đột bạn phải "đánh dấu là giải quyết". – james2code

5

BuzzAnn là đúng. mỏ vs của họ là mơ hồ, vì những gì trong kho lưu trữ cũng có thể là của tôi. Sự khác biệt rõ ràng là kho lưu trữ so với bản sao cục bộ.

4

Việc hợp nhất dòng lệnh SVN gây nhầm lẫn đặc biệt là khi hợp nhất một chi nhánh trở lại vào thân cây. "Thay đổi của tôi" là những gì tôi đã thực hiện trong chi nhánh, nhưng sẽ sai theo SVN. Để thực sự phức tạp, SVN đề cập đến các đường dẫn như SOURCE, TARGET và HEAD trong trợ giúp dòng lệnh.

Đây là đơn giản trả lời, nếu bạn chạy tuyên bố hợp nhất này từ thư mục C: \ Project1 \ Trunk

svn merge -r 60:68 C:\Project1\branches\UpdatesToProject1 

"Mine" là thư mục mà SVN đang được chạy từ (C: \ Project1 \ Trunk).

"Của họ" là thư mục mà bạn đang sáp nhập và đã xác định trên dòng lệnh (C: \ Project1 \ chi nhánh \ UpdatesToProject1)

Nó sẽ thực sự thật sự tốt đẹp nếu SVN đưa đường dẫn MINE và THEIRS đề cập đến.

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