2012-05-02 24 views
43

Tôi có bản sao làm việc cho toàn bộ kho lưu trữ của mình, chứa nhiều dự án Python. Khi tôi chọn bấm chuột phải -> SVN Update trong Windows File Explorer Tôi nhận được một thông báo lỗi liệt kê một thư mục dự án đặc biệt:TortoiseSVN báo cáo xung đột, nhưng không xung đột nào có thể được tìm thấy

Command: Update 
Updating: path\to\working\copy 
Skipped obstructing working copy: path\to\working\copy\project 
Completed: At revision: 176 
Warning!: One or more files are in a conflicted state. 

Khi tôi đi đến dự án đó và bấm chuột phải -> SVN Update, nó cập nhật thành công. Cũng không có trình soạn thảo xung đột nào có sẵn và khi tôi nhấp chuột phải -> TortoiseSVN -> Đã giải quyết, không có tệp nào khả dụng.

Điều gì có thể gây ra xung đột? Miễn là điều này vẫn xảy ra, không thể cập nhật dự án này trong bản sao làm việc của tôi.

Trả lời

88
Skipped obstructing working copy 

điều này có nghĩa rằng có một thư mục bản sao làm việc theo cách: cập nhật của bạn muốn thêm một thư mục với tên 'dự án', nhưng bạn đã có một thư mục phiên bản 'dự án' trong bản sao làm việc của bạn. Có thể bạn đã chuyển thư mục đó từ một bản sao làm việc khác? Hoặc thư mục đó là bản sao làm việc của riêng nó (nếu nó có các thư mục ẩn .svn thì đó là một bản sao làm việc độc lập, riêng biệt).

Để giải quyết: di chuyển thư mục ra khỏi bản sao làm việc của bạn (hoặc chỉ cần xóa nó). Sau đó chạy lại cập nhật. Bản cập nhật sẽ tìm nạp một thư mục có cùng tên một lần nữa. Nhưng nó có thể không giống như bạn đã có - đó là lý do tại sao tôi khuyên bạn nên di chuyển thư mục và xóa nó chỉ sau khi kiểm tra thư mục cập nhật là giống hệt với thư mục gốc.

+1

Cảm ơn @Stefan - Điều đó đã hiệu quả. Tôi vẫn không chắc chắn làm thế nào điều đó xảy ra bởi vì thư mục tôi di chuyển và thư mục đã được thêm vào bản sao làm việc khi sử dụng SVN Update hoàn toàn giống hệt nhau. Cảm ơn đã giúp đỡ. – Brian

+1

Cảm ơn bạn đã xác định nó bằng tiếng Anh đơn giản! –

+0

Tôi đã tạo một bản sao làm việc bằng cách sử dụng tùy chọn "tạo kho lưu trữ tại đây" trong thư mục con. Sau đó, tôi đã "Kiểm tra" trong thư mục mẹ. Điều này khiến tôi có hai bản sao làm việc. Tôi đã giải quyết nó bằng cách xóa thư mục con. Cảm ơn cho giải pháp đơn giản và làm việc này !!! –

4

Thử nhấp chuột phải/TortoiseSVN/dọn dẹp.

Điều này thường phù hợp với tôi.

+0

Tôi có làm điều đó trên thư mục bản sao làm việc hoặc thư mục dự án – Brian

+0

thư mục bạn đã kiểm tra (thư mục bạn cam kết) –

+0

Tôi vừa thử làm sạch cả hai và không hoạt động, nhưng cảm ơn sự giúp đỡ. Tôi luôn quên làm sạch. – Brian

7

Bạn cũng có thể chọn tùy chọn "Xóa các tệp và thư mục không phiên bản" trong trình đơn dọn dẹp nếu phiên bản svn của bạn hỗ trợ tính năng này. Điều đó chắc chắn làm mọi thứ dễ dàng hơn thay vì săn lùng từng thư mục một (tôi luôn thấy chúng là các bản sao không được phiên bản).

Xem ra mặc dù bạn không quên không thực hiện bất kỳ bổ sung tệp hợp lệ mới nào trước khi thực hiện việc dọn dẹp này ..!

1

Tôi đã chạy vào cùng một vấn đề nhưng nó đã xảy ra ở gốc của một chi nhánh rất lớn (c:\svn\root). Tôi làm việc sâu xuống (c:\svn\root\some\dir\deep\down\) chỉ trong một trong các thư mục để lời giải thích của Stefan về vấn đề và giải pháp không có ý nghĩa.

Giải pháp thay thế của tôi là cập nhật từng thư mục riêng lẻ trong c:\svn\root\ rồi quay lại và cập nhật c:\svn\root\. Điều này làm việc cho tôi. Bạn không chắc chắn vấn đề thực sự là gì.

0

tôi giải quyết vấn đề này mà không cần phải di chuyển các file, như obstructed thư mục con của tôi đã được liên kết một cách chính xác vào svn:

  1. Checkin tất cả các file trong các thư mục có Skipped obstructing working copy
  2. Bây giờ bạn có thể xóa một cách an toàn obstucted thư mục (như chúng tôi kiểm tra trong tất cả mọi thứ trước đó)
  3. Thực hiện một cập nhật vào thư mục gốc

Bây giờ toàn bộ thư mục là một lần nữa sạch sẽ và cập nhật trên thư mục gốc làm việc.