2009-12-07 16 views

Trả lời

6

Là một khắc phục, bạn có thể subst bản sao làm việc của bạn vào một ký tự ổ đĩa để giữ xuống theo chiều dài đường dẫn:

C:\Users\Me\SVN\My\Cool\Repository\With\A\Very\Long\Path> subst S: . 
C:\Users\Me\SVN\My\Cool\Repository\With\A\Very\Long\Path> S: 
S:> svn up 
7

Đây không phải là thực sự là một giới hạn của khách hàng svn nhưng các cửa sổ giao diện điều khiển: relative đường dẫn không thể vượt quá MAX_PATH (254) ký tự khi mở rộng.

Và không giống như một số người bình luận ở đây tuyên bố, nó không phải là một giám sát của các nhà phát triển svn để quên về MAX_PATH. Bởi vì: nếu bạn vượt qua các đường dẫn đầy đủ thay vì các đường dẫn tương đối, các lệnh sẽ hoạt động.

Vì vậy, thay vì

cd C:\some\...\very\long\path 
svn up . 

chạy

svn up c:\some\...\very\long\path 

và nó sẽ chỉ làm việc tốt.

+0

Vì vậy, chúng ta cần thực hiện (svn up path) trong tất cả các thư mục trong dự án của chúng tôi? –

+0

có, hoặc rút ngắn các đường dẫn xuống dưới 254 ký tự, hoặc bằng cách thực sự rút ngắn chúng (đổi tên) hoặc sử dụng SUBST trên thư mục con và sau đó sử dụng ổ đĩa được thay thế làm đường dẫn. – Stefan

+0

Argh. Tôi xin lôi. Và bây giờ tôi thậm chí không thể xóa câu trả lời đó nữa. – Joey

0

Nếu dòng lệnh của bạn là trong thực tế, bash Cygwin, sau đó bạn có thể nhấn lỗi này:

http://www.itefix.no/i2/node/11064 hoặc http://old.nabble.com/file-name-too-long-td22189828.html

mà trên thực tế là, Cygwin không thể xử lý những con đường với chiều dài hơn 255 ký tự. (Ngoài câu trả lời của Stefan: Không có đường dẫn tuyệt đối và tương đối nào có thể ở đây.) Cygwin 1.7, là phiên bản beta kể từ nửa năm, dường như khắc phục điều này.

+0

Không - nó không phải là Cygwin. Tôi sử dụng svn từ FAR hoặc từ cmd. –

1

Thay vì làm như sau trong thư mục hiện tại của bạn:

svn co http://xxx/repo1 

Give it con đường mục tiêu đầy đủ như thế này:

svn co http://xxx/repo1 E:\abc\pqr\xyz\abc\pqr\xyz\repo1 
+0

Hoạt động! Cảm ơn bạn! Tôi nghĩ rằng đó là cửa sổ tập tin hệ thống giới hạn. – RonPringadi

0

tôi đã cùng một vấn đề trên một hệ thống Ubuntu khi cố gắng thanh toán một kho lưu trữ với tên tập tin rất dài. Tuy nhiên, tôi phát hiện ra rằng sự cố của tôi liên quan đến việc mã hóa ổ đĩa nhà của tôi, như được giải thích tại đây: http://ubuntuforums.org/showthread.php?t=2258374

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