2011-10-21 40 views
6

Gần đây tôi đã nâng cấp phiên bản SVN và TortoiseSVN mà tôi đã cài đặt trên máy trạm của mình và bất cứ khi nào tôi kiểm tra sự khác biệt trên tệp mà không có bất kỳ thay đổi nào, tôi nhận được thông tin sau lỗi.Tại sao SVN không thể tìm thấy vị trí kho lưu trữ cho số 0

Tôi đã kiểm tra một bản sao mới của một trong các dự án của tôi (tôi đã thử một vài) và vẫn mang lại kết quả tương tự.

Tôi đã thử nâng cấp SVN trên trạm làm việc của mình với hy vọng nó sẽ khắc phục được sự cố (tôi cho là không thể so sánh) - không có súc sắc.

Tôi cũng đã thử cài đặt lại TortoiseSVN hoàn toàn - một lần nữa, không có súc sắc.

Điều buồn cười duy nhất khác mà tôi đã thực hiện là di chuyển vị trí của kho lưu trữ gốc (được lưu trữ trên hệ thống tệp, chứ không phải DB). Nhưng đường dẫn của nó giống như thông báo lỗi, vì vậy tôi tin rằng nó đang tìm kho lưu trữ.

Điều gì khác có thể là nguyên nhân?

+0

Chỉ cần rõ ràng, tôi đã kiểm tra dự án này vì tôi di chuyển vị trí của nó trên ổ đĩa mạng của tôi. – BIBD

+0

URL của repo có thay đổi trong khi di chuyển không? Sau đó rev. không bạn chuyển repo? Bạn có thể truy cập * bất kỳ sửa đổi nào *, được tạo trước khi di chuyển không? –

Trả lời

4

Điều này dường như là kết quả mong đợi để kiểm tra sự khác biệt trên tệp mà không có bất kỳ thay đổi nào. Tôi đã mong đợi một kết quả như "các tập tin được cập nhật", nhưng sẽ trở lại một phiên bản cũ của TortoiseSVN trên một máy trạm khác mà tôi đã tự tin vẫn làm việc đã cho tôi kết quả tương tự cho một tập tin chưa được chỉnh sửa.

+1

+1 để 'kiểm tra sự khác biệt trên tệp mà không cần bất kỳ thay đổi'. Đây là những gì đã gây ra cho tôi những vấn đề cho tôi cố gắng để 'diff với phiên bản trước' khi tập tin đã không thực sự có một phiên bản trước đó. Đó là một tập tin đã được thêm một lần, và trong hàng trăm bản sửa đổi sau đó đã không được sửa đổi gì cả. –

2

Bản sửa đổi đầu tiên của bạn (bản sửa đổi 0) có thể không có thư mục "trunk", "branch" hoặc "tags". Chúng thường được thêm vào trong lần kiểm tra ban đầu (bản sửa đổi 1).

Như vậy, nếu bạn đã "chuyển đổi svn" thành một trong những thư mục đó (thường thực hiện điều này với thư mục "trunk"), sau đó yêu cầu sửa đổi 0 trên thư mục đó sẽ cung cấp cho bạn thông báo lỗi không thể tìm thấy đường dẫn "<svnrepo>/trunk" trong bản sửa đổi 0, do đó, nó không thể kéo bản sửa đổi đó và vẫn tôn vinh lệnh "svn switch" trước đó.

Hãy thử "svn switch" để vào tên dự án, mà không đi vào bất kỳ thư mục con, và tôi sẽ đặt cược sau đó bạn có thể kéo lên phiên bản 0.

+0

Điều đó có quan trọng không nếu tôi đã kiểm tra một bản sao mới từ kho lưu trữ ở vị trí mới của nó và đó là bản sao mới mà tôi đang gặp sự cố? – BIBD

+1

Không thực sự. Trừ khi bạn kiểm tra "gốc" của kho lưu trữ, bạn không nên mong đợi để có được một thanh toán tốt của bản sửa đổi 0. Trong bản sửa đổi 0, thường chỉ có "gốc" của kho lưu trữ tồn tại. Đó là tất cả những thứ được thêm vào sau (trong các bản sửa đổi khác) mà thêm các đường dẫn và tệp không phải gốc. –

+1

Hãy nhớ rằng, "trunk", "branch", "tags", v.v. không được tích hợp vào subversion, chúng là các mục được kiểm tra vào kho lưu trữ sau khi nó đã được tạo. Chúng thường không có trong bản sửa đổi 0. Điều đó có nghĩa là bạn không thể kiểm tra chúng (bằng mọi cách) trong bản sửa đổi 0, thậm chí không bằng phương tiện kiểm tra "https: // myserver/myproject/trunk". Đối với bản sửa đổi 0, chỉ thanh toán "https: // myserver/myproject" mới có ý nghĩa. –

1
$ svnadmin create /path/to/repos 

Điều này tạo ra một kho lưu trữ mới trong thư mục/path/to/repos. Kho lưu trữ mới này bắt đầu cuộc sống tại phiên bản 0, được định nghĩa là không bao gồm nhưng thư mục hệ thống tệp gốc cấp cao nhất (/). Ban đầu, bản sửa đổi 0 cũng có một thuộc tính sửa đổi duy nhất, svn: date, được đặt vào thời điểm mà kho lưu trữ được tạo ra.

+0

Bạn đang nói thông báo lỗi là kết quả mong đợi khi bạn thực hiện một khác biệt trên tệp chưa thay đổi? (Lưu ý: Tôi đã viết lại câu hỏi của tôi kể từ khi bạn trả lời) – BIBD

+0

Dự kiến ​​cho 0 resision, bởi vì nó là trường hợp đặc biệt - bạn có thể nhìn thấy trong 'svn log filename' khi tập tin ** thực sự xuất hiện ** trong repo (nó phải là rev 1 hoặc 2, tôi nghĩ) - xem trong lịch sử repo ví dụ của tôi về http://mayorat.ursinecorner.ru:8088/svn/Hello/trunk/Hello.en.txt –

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