Subversion sẽ xử lý> file 1GB của bạn với sự tự tin bụng tốt cho hầu hết các phần nhưng nếu có nhiều thay đổi lớn mong đợi thế hệ của diffs để có một thời gian ...
Tính năng tốt đẹp của Subversion là theo thiết kế, không có giới hạn đối với kích thước kích thước tệp có thể xử lý. Các tệp được gửi "một cách hợp lý" theo cả hai hướng giữa máy khách và máy chủ Subversion, sử dụng một lượng bộ nhớ không đổi nhỏ, trên mỗi bên của mạng.
Tất nhiên, có một số vấn đề thực tế cần xem xét. Trong khi không cần phải lo lắng về các tệp trong phạm vi kilobyte (ví dụ: tệp mã nguồn điển hình), thì các tệp lớn hơn có thể mất một số lượng lớn thời gian và không gian (ví dụ: tệp là hàng chục hoặc hàng trăm megabyte) lớn.)
Để bắt đầu, hãy nhớ rằng bản sao làm việc Subversion của bạn lưu trữ bản sao nguyên sơ của tất cả các tệp được kiểm soát phiên bản trong khu vực .svn/text-base/ . Điều này có nghĩa là bản sao làm việc của bạn chiếm ít nhất hai lần là nhiều không gian đĩa làm tập dữ liệu ban đầu. Ngoài ra, ứng dụng Subversion tuân thủ thuật toán (hiện không thể điều chỉnh) để thực hiện các tệp :
. Sao chép tệp vào .svn/tmp/(có thể mất một lúc và tạm thời sử dụng không gian đĩa bổ sung))
. Thực hiện một sự khác biệt nhị phân giữa tmpfile và bản sao nguyên sơ, hoặc giữa tệp tmpfile và một tệp rỗng nếu mới được thêm . (có thể mất rất nhiều thời gian để tính toán, mặc dù chỉ một lượng nhỏ dữ liệu cuối cùng có thể được gửi qua mạng)
. Gửi diff đến máy chủ, sau đó di chuyển tmpfile vào svn/text-base/
Vì vậy trong khi không có giới hạn lý thuyết với kích thước của tập tin của bạn, bạn sẽ cần phải lưu ý rằng tập tin rất lớn có thể yêu cầu khá một chút của bệnh nhân chờ đợi trong khi khách hàng của bạn chugs đi. Tuy nhiên, bạn có thể yên tâm, , không giống như CVS, các tệp lớn của bạn sẽ không mất khả năng máy chủ hoặc ảnh hưởng đến những người dùng khác.
ascii hoặc nhị phân? – Johan
nhị phân - mặc dù tôi không biết bất kỳ hệ thống kiểm soát phiên bản hiện đại nào có thuật toán phân biệt giữa ascii và nhị phân. Tôi sẽ dùng thử và đăng kết quả của mình tại đây. –
Cam kết ban đầu bận và sử dụng giao thức file: //, subversion chuyển trung bình 1,5 MB mỗi giây. Khá chậm chạp. –