2013-08-01 35 views
15

Tôi đang cố gắng thêm tệp vào một kho lưu trữ SVN bằng cách sử dụng TortoiseSVN 1.8.1. Tôi nhấp chuột phải vào các tập tin và chọn TortoiseSVN-> Add. Sau đó tôi chọn tất cả các tệp trong cửa sổ bật lên và nhấp OK. Khi nhấp vào OK, một hộp thoại khác xuất hiện và tất cả các tệp xuất hiện để được thêm thành công vì nó cho biết "Đã thêm" bên cạnh mỗi tệp và cuối cùng là "Hoàn thành!" ở phía dưới. Tôi bấm OK, rồi bấm chuột phải vào thư mục mẹ và bấm "Cam kết". Tôi điền vào hộp thông báo và đảm bảo rằng tất cả các tệp tôi đã thêm đều được chọn và tất cả đều được thêm vào "trạng thái". Cuối cùng, tôi nhấp "OK". Một hộp bật lên, như bình thường, nói "Bạn chưa nhập số phát hành" và tôi nhấp vào "Tiếp tục mà không có số phát hành". Hộp tiếp theo bật lên có dòng có nội dung "Đang thêm" với tệp tôi đang cố gắng thêm sau:TortoiseSVN sẽ không cho phép tôi thêm bất kỳ tệp nào

Error: Commit failed (details follow): 
Error: File '%Path to my file%' is 
Error: out of date 
Error: File '%File name%' already exists 
Error: You have to update your working copy first. 

Tôi cập nhật thành công bản sao làm việc của mình mà không có thay đổi. Tôi cũng làm sạch thành công. Tôi đã thử xóa thư mục mẹ và xóa toàn bộ thư mục cơ sở và kiểm tra lại thư mục cơ sở.

Tôi kiểm tra kho lưu trữ và không có tệp nào ở đó với tên tệp của tệp đang được thêm.

Tất cả những điều trên đều thông qua gui. Sử dụng dấu nhắc lệnh tôi đã nhận như sau:

svn status: 
svn: E155037: Previous operation has not finished; run 'cleanup' if it was interrupted 

svn cleanup 5.0.1: 
svn: E155009: Failed to run the WC DB work queue associated with '%PathToBaseRepoFolder%', work item 12841 (sync-file-flags 56 %Path to another file I was unable to add from the base repo folder%) 
svn: E720003: Can't set file '%Full path to the other file I was unable to add%' read-write: The system cannot find the path specified. 

Nếu tôi làm một bản cập nhật và dọn dẹp từ gui, nó nói cả hai đều thành công.

Chúng tôi đang sử dụng http: //

Tôi tin rằng các quyền là chính xác.

+1

gì 'svn status' hiển thị? Và bạn đã thực hiện cập nhật 'svn'. Đúng? Không có xung đột? Bạn đang sử dụng loại giao thức nào cho máy chủ của mình? Có phải nó là 'file: //', 'http: //', hay 'svn:'? Các quyền trên các tệp trong kho lưu trữ trên máy chủ có chính xác không? –

+0

Xem cập nhật cho câu hỏi của tôi. –

+0

Bài đăng thú vị có cùng thông báo lỗi: http://svn.haxx.se/users/archive-2013-07/0125.shtml. Điều này có thể được mã hóa/ngôn ngữ liên quan? Bạn chạy 'svn cleanup' thành công trên dòng lệnh? –

Trả lời

9

Sự cố đã được cập nhật lên phiên bản 1.8.1 có lỗi. Tôi đã tải xuống phiên bản 1.8.0 và nó hoạt động tốt.

+1

Tôi đã có cùng một vấn đề với TortoiseSVN 1.8.2 với một số tệp (không phải tất cả các tệp). Tôi đã cài đặt lại TortoiseSVN 1.8.0 và nó hoạt động ngay bây giờ. – Ubikuity

+0

Vấn đề này vẫn còn tồn tại trong 1.8.3, chỉ cần có nó trong một hợp nhất vào thân cây, loại bỏ các thân cây và kiểm tra nó ra một lần nữa và remerged và nó đã làm việc! – Peter

2

OK, tôi không biết đây có phải là vấn đề hay không. Tôi đã gặp lỗi này xảy ra khi kiểm tra thưa thớt được sử dụng. Bạn có thể điều chỉnh những tệp nào bạn thấy trong quá trình thanh toán qua cờ --depth và trong các bản cập nhật qua cờ --set-depth. Nếu bạn --set-depth=exclude trên một số tệp nhất định, bạn sẽ thấy lỗi này nếu bạn cố gắng thêm tệp.

Hãy thử điều này từ dòng lệnh. Từ ROOT của thư mục làm việc của bạn:

$ svn cleanup 
$ svn update --set-depth=infinity 
$ svn status 

Đảm bảo cả ba lệnh này đều hoạt động. Sau đó, hãy thử cam kết.

39

Đã xảy ra với tôi vài lần nhiều lần với TortoiseSVN 1.8.2 - 1.8.10. Tôi tìm thấy this blog post giải quyết vấn đề này một lần, cho đến khi nó bật lên một lần nữa. Nó làm tôi khó chịu đến mức tôi đã viết một tập lệnh dơi nhanh chóng mà tôi chạy từ máy tính để bàn.

Điều kiện tiên quyết

  1. Tải về và giải nén công cụ sqlite3 vỏ, ví dụsqlite-shell-win32-x86-3080803.zip
  2. Điều chỉnh đường dẫn trong các lệnh dưới đây để phù hợp với môi trường của bạn

Fix (thủ công)

Run này nếu bạn chỉ muốn kiểm tra nếu điều này giúp

  1. Trong CMD do C:\Downloads\sqlite3.exe "C:\src\.svn\wc.db"
  2. Khi chạy trong vỏ sqlite delete from WORK_QUEUE;
  3. Run rùa svn dọn dẹp

Fix (tự động)

Nếu bước trước làm việc cho bạn, hãy xem xét việc tự động hóa quá trình với các bước sau

  1. Đến của bạn .svn thư mục, ví dụ: C: \ src \ svn
  2. Sao chép sqlite3 vỏ công cụ có
  3. Tạo một file fix-svn.bat trong thư mục đó
  4. Chèn mã kịch bản, và điều chỉnh đường dẫn

    "C:\src\.svn\sqlite3.exe" wc.db "delete from WORK_QUEUE" 
    "C:\Program Files\TortoiseSVN\bin\svn" cleanup "C:\src" 
    
  5. Lưu file bat và tạo lối tắt tới màn hình của bạn

  6. Lần tới bạn cần khắc phục, chỉ cần chạy lối tắt trên màn hình của bạn
+0

Cách thoát/thoát khỏi dòng lệnh sqlite: '.exit' – malisokan

+1

xin lỗi vì đã có câu trả lời, nhưng định dạng văn bản không hiển thị nhiều. Hiện đã được cập nhật. Cả '.quit' và' .exit' sẽ hoạt động. – oleksii

+0

tôi gặp sự cố này với máy khách svn 1.8.10 sau khi tạo chi nhánh tính năng từ thư mục làm việc với các thay đổi cục bộ và sau đó thực hiện 'svn switch' khi cố gắng giải quyết xung đột kết quả. tôi nghĩ rằng tôi đã thực hiện các chi nhánh tính năng từ sửa đổi sai. –

2

Cập nhật lên release candidate đã giải quyết được sự cố cho tôi.

+0

Thx, đã giải quyết nó cho tôi. Liên kết dường như đã lỗi thời. Ứng cử viên phát hành hiện tại có thể được tìm thấy trong thư mục sau: http://nightlybuilds.tortoisesvn.net/1.8.x/x64/full/ – tea2code

0
sudo svn cleanup 

giải quyết vấn đề của tôi

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