2013-08-26 31 views
59

Trong tortoiseSvn 1.8 không có tùy chọn nhánh "tái hòa nhập". Cách đúng để tái hòa nhập một chi nhánh trong Tortoise Svn 1.8 là gì?Tortoisesvn Subversion 1.8 - hợp nhất - không tích hợp lại tùy chọn chi nhánh

Trong chọn hợp nhất và sau đó lựa chọn tiếp theo: Merge first step

Sau đó, tôi nhận được cửa sổ tiếp theo: enter image description here

Hoặc tôi đang làm cái gì khác xảy ra?

+0

Tùy chọn nào xuất hiện cho bạn? –

Trả lời

37

Chỉ cần nhập chi nhánh đối với bất kỳ MỤC TIÊU

Sửa

OK, câu trả lời mở rộng: "Hợp nhất cho Dummies" trong hình ảnh

Lời nói đầu

OK, tôi sẽ không che hoặc ẩn mặt đất được chứng minh đã qua sử dụng.

Được sử dụng trong này nguồn mẫu:

Repo Graph

  • thư mục Local z:\WC-Trunk (WC của thân cây, được sử dụng trong quá trình)
  • TortoiseSVN 1.8.1, Xây dựng 24.570-32 Bit

Các bước để tạo

Để hợp nhất chi nhánh để thân cây, tôi phải có công tác Sao chép của thân cây, do đó - ĐẦU thân của checkouted đến WC-Trunk

z:\WC-Trunk>svn ls 
Dr?p?r.ma?ar.sv?nskan.man.eller.smalensk?n.txt 
Hello.de.txt 
Hello.en.txt 
Hello.eo.txt 
Hello.fr.txt 

nó cần WC

z:\WC-Trunk>svn info 
Path: . 
Working Copy Root Path: Z:\WC-Trunk 
URL: http://mayorat.ursinecorner.ru:8088/svn/Hello/trunk 
Relative URL: ^/trunk 
... 

Bắt đầu sáp nhập

Start

Chọn "Hợp nhất loạt", bởi vì "Phương pháp này bao gồm các trường hợp khi bạn đã thực hiện một hoặc nhiều sửa đổi một chi nhánh (hoặc thân cây) và bạn muốn cảng những thay đổi trên một khác nhau chi nhánh"

Merge type

Chọn tất cả các phiên bản, nếu trường hợp không xác định và đường dẫn đến cây trong kho, mà phải được sáp nhập vào thân cây (chi nhánh Pháp của chúng tôi)

Merge Options

Xác định (nếu cần) một số tùy chọn hợp nhất bổ sung, có thể kiểm tra hợp nhất để phát hiện, sẽ được giải quyết xung đột cần thiết dưới mọi hình thức, hoặc chỉ bắt đầu quá trình hợp nhất thực cuối cùng

Options 2

+0

Tôi có 3 nhánh để đặt. Từ, đến bản sao làm việc khi tôi chọn "Hợp nhất hai cây khác nhau" –

+0

@JernejNovak - không sử dụng hợp nhất 2 URL, cho đến khi nó ** thực sự cần ** –

+0

Hãy xem câu hỏi đã chỉnh sửa của tôi. –

67

Nó không còn trong TortoiseSVN vì Subversion 1.8 không dùng tùy chọn --reintegrate. Subversion 1.8 có xử lý/phát hiện tái hòa nhập tự động.

Xem: Subversion 1.8 release notes, cụ thể the auto-reintegrate section

Đây là khu vực có liên quan, để thuận tiện:

tự động tái hòa nhập hợp nhất (tùy chọn --reintegrate bị phản đối)

Trong hòa trộn mà hợp nhất tất cả các bản sửa đổi đủ điều kiện từ một chi nhánh khác, Phiên bản phụ 1.8 sẽ tự động quyết định liệu việc hợp nhất có phải là rein hay không tegrating một nhánh. Do đó, việc tái hòa nhập một chi nhánh không còn nữa yêu cầu tùy chọn - tích hợp để hoạt động chính xác.

Tùy chọn - tích hợp của hợp nhất svn hiện không được dùng nữa và việc sử dụng nó là không khuyến khích. Tái hòa nhập một chi nhánh, có một bản sao làm việc sạch của thân cây và chạy lệnh sau trong thư mục cấp cao nhất của nó:

$ svn merge ^/branches/my-branch 

hợp nhất này sẽ vẫn thực hiện kiểm tra sự tỉnh táo tương tự mà svn merge --reintegrate thực hiện trước đó bản phát hành:

  • Bản sao làm việc không được là bản sao làm việc sửa đổi hỗn hợp.
  • Bản sao làm việc không được chuyển sang các phụ đề.
  • Không được có khoảng trống trong phạm vi sửa đổi được sáp nhập từ mục tiêu tái hòa nhập (ví dụ: thân cây) đến nguồn tái hòa nhập
    (tức là nhánh được tái hòa nhập).

Nếu một trong những điều kiện được phát hiện, việc hợp nhất được hủy bỏ và bước cần thiết phải được thực hiện để giải quyết vấn đề trước khi chi nhánh có thể được reintegrated. Ngược lại với hợp nhất - hòa nhập, một hợp nhất tự động hợp nhất thành bản sao làm việc với các sửa đổi cục bộ là được phép.

Sáp nhập để-and-fro giữa hai chi nhánh theo thứ tự nào là có thể sử dụng hợp nhất tái hòa nhập tự động (các "nhảy giữ-sống" không còn cần thiết). Để có kết quả tốt nhất, bạn nên luôn hợp nhất tất cả sửa đổi đủ điều kiện, tức là không sử dụng tùy chọn -r hoặc -c của svn merge. Việc hợp nhất chỉ một tập hợp các bản sửa đổi đủ điều kiện làm tăng khả năng các sự cố trong quá trình hợp nhất trong tương lai.

Sử dụng - tích hợp trong Subversion 1.8 sẽ buộc tái hòa nhập hợp nhất, cho dù đó có phải là sự hợp nhất phù hợp để thực hiện trong tình huống nhất định không.

Trong trường hợp của bạn, bạn nên làm như sau:

  1. Hãy chắc chắn rằng bạn đang sử dụng một sạch sẽ, không sửa đổi, up-to-date thân bản sao làm việc như bình thường
  2. TortoiseSVN -> Merge về vấn đề này gốc bản sao làm việc
  3. Chọn "Hợp nhất một loạt các phiên bản"
  4. Chọn ngành bạn đang tích hợp lại
  5. Không chỉ định phạm vi sửa đổi (để hợp nhất tất cả các phiên bản đủ điều kiện)
  6. Subversion 1.8 nên autodetect tái hoà nhập và thực hiện việc kiểm tra an toàn cùng
  7. Tiến hành hợp nhất của bạn thường

Theo bảng tính tương thích, một khách hàng Subversion 1.8 có thể thực hiện tự động tái hòa nhập này miễn là máy chủ Subversion và định dạng kho lưu trữ của bạn là mỗi phiên bản 1.5 hoặc mới hơn.

Tôi chưa tự động tích hợp lại, tôi sẽ ngừng ghi chú phát hành.

+2

Câu trả lời này là tốt hơn vì "Không chỉ định phạm vi sửa đổi (để hợp nhất tất cả các bản sửa đổi đủ điều kiện)" – oldwizard

+0

Cảm ơn lời giải thích hữu ích. Tôi đã nhận thấy rằng trong SVN 1.7 hợp nhất theo dõi cũng hoạt động hoàn hảo và tôi không thấy sự cần thiết phải sử dụng tái hòa nhập có một trong hai. Có thể chỉ cần tích hợp lại bằng cách sử dụng kết hợp bình thường trong 1,7 không? – Fletch

+0

@Fletch Tôi đã luôn luôn tham chiếu [bài đăng này] (http://blogs.collab.net/subversion/subversion-merg) trên blog collab.net liên quan đến hợp nhất tái hòa nhập kể từ 1.5. Tôi vẫn sử dụng nó để tái phân nhánh chi nhánh trong 1,7 - về cơ bản nó có rất nhiều kiểm tra an toàn thêm và nó đã tìm thấy các vấn đề tiềm năng đối với tôi trong quá khứ (1.7). Nhìn kỹ hơn vào các tài liệu phát hành, tôi nghĩ gợi ý sẽ nâng cấp máy khách lên 1.8 (phiên bản máy chủ chỉ cần 1.5+) vì tích hợp lại tự động là một hoạt động bên CLIENT và sau đó bạn chắc chắn không lo lắng về nó. –

14

Giữ phím Shift khi bạn mở menu ngữ cảnh, bạn sẽ thấy các tùy chọn ẩn. Sẽ có TortoiseSVN/Merge reintegrate... trong menu.

Tuy nhiên bạn nên sử dụng mới Automatic reintegration merge

+1

Holly! Cảm ơn bạn đã chọn tùy chọn SHIFT. Có rất nhiều thứ ở đó thực sự đã giúp tôi. – imclickingmaniac

+4

Cảm ơn, không biết về tùy chọn 'Shift'! Dù sao, trong 'TortoiseSVN 1.9.2' không có' Hợp nhất tái hòa nhập ... 'nữa. – Micer

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