2009-08-18 23 views
22

Ở khắp mọi nơi tôi truy cập vào google Tôi nhận được câu trả lời tương tự cho vấn đề này nhưng đó là câu trả lời sai cho tôi. Ban đầu tôi đã cài đặt Subversion 1.5.6 cho các cửa sổ (tôi chạy Windows Server 2008) trên máy chủ của mình và tôi đã tạo một kho lưu trữ cho một dự án. Sau đó, tôi đã sử dụng phiên bản máy khách Tortoise 1.6.x trên máy tính xách tay của mình để cập nhật dự án. Tất cả mọi thứ đã được hunky-dory cho đến khi tôi đã cố gắng sử dụng một kịch bản móc sau cam kết (tôi đang cập nhật các thư mục trong wwwroot cam kết để phản ánh những thay đổi trên một trang web). Tôi nhận được thông báo về ảnh hưởng của "Ứng dụng khách này quá cũ để làm việc với bản sao làm việc 'XXX'".Khách hàng này quá cũ để làm việc với bản sao làm việc

Vì vậy, tôi đã gỡ cài đặt ứng dụng khách SVN trên máy tính xách tay của mình và xóa kho lưu trữ khỏi máy chủ. Sau đó tôi thực hiện một kho lưu trữ mới trên máy chủ từ đầu và cài đặt TortoiseSVN phiên bản 1.5.6 suy nghĩ nếu phiên bản máy khách giống như phiên bản Subversion trên máy chủ thì chúng nên chơi tốt. Sau khi tôi tải xuống kho lưu trữ trên máy tính xách tay của mình và cài đặt lại tập lệnh móc, tôi nhận được cùng một thông báo ...

Đó là khá khó khăn thông qua thử và sai. Tôi thấy không có lý do (và có thể tìm thấy không trực tuyến) là lý do tại sao kho sẽ tranh luận nếu cả hai TortoiseSVN và Subversion máy chủ của tôi là cả 1.5.6.

Có ai ở đó có thể cung cấp một số thông tin chi tiết về lý do tại sao tôi nhận được thông báo này không? Có lẽ ngay cả một người có thể cho tôi biết phiên bản TortoiseSVN nào tôi cần sử dụng để Server SVN 1.5.6 của tôi không phàn nàn. Kịch bản móc của tôi hoạt động từ dòng lệnh trên máy chủ của tôi vì vậy tôi biết đó không phải là lỗi của nó. Cảm ơn trước.

+2

Bạn nhận được thông báo lỗi từ TortoiseSVN hoặc một cái gì đó khác? Kịch bản móc là gì? Bạn đang truy cập vào máy chủ svn thông qua http? – leeeroy

+1

Nếu bạn có vấn đề với khách hàng, tại sao bạn tái tạo kho lưu trữ và không chỉ tạo lại một bản sao làm việc? Hay bạn cũng cập nhật máy chủ? – Eugene

+0

Tôi gặp lỗi trong TortoiseSVN và trình khách dòng lệnh. đây là những gì kịch bản móc của tôi trông giống như: "[PATH TO svn.exe]" cập nhật "[PATH TO SERVER LÀM VIỆC BẢN SAO]" --quiet --non-interactive --username [USERNAME] - mật khẩu [PASSWORD] --config-dir "[PATH TO REPOSITORY CONFIGURATION FILE]" Tôi không truy cập qua http – Adamantine

Trả lời

14

Hóa ra phiên bản máy chủ SVN của tôi là 1.5.6, nhưng trình khách TortoiseSVN mà tôi đã cài đặt trên máy chủ là phiên bản 1.6.3. Khi tôi sẽ kiểm tra bản sao làm việc wwwroot của tôi (hoặc cập nhật nó bằng cách sử dụng các tùy chọn nhấp chuột phải TortoiseSVN đã cho tôi) và cập nhật phiên bản của bản sao làm việc, máy chủ SVN không thể cập nhật nó vì nó là một phiên bản thấp hơn.

Tôi đã tải xuống TortoiseSVN 1.5.6 từ tệp hà mã và kiểm tra lại bản sao làm việc trên máy chủ và tất cả đều hoạt động tốt!

+1

Chẳng phải đây chính xác là điểm tôi đang làm à? (Xem bình luận cuối cùng của tôi) – paracycle

3

Bạn cho rằng nguyên nhân của sự cố không phải là tập lệnh móc hậu cam kết nhưng linh cảm của tôi là số chính xác là gốc của sự cố của bạn. Khi kịch bản sau cam kết của bạn chạy, làm thế nào để lấy các tệp ra khỏi máy chủ Subversion của bạn để nó có thể sao chép chúng vào máy chủ web của bạn? Liệu nó không kiểm tra xem chúng ra? Bên cạnh đó, bạn nói rằng mọi thứ đã hoạt động tốt cho đến khi bạn đã cài đặt tập lệnh móc hậu cam kết.

Tôi đã làm việc trong các tình huống cài đặt SVN client/server hỗn hợp trước, bao gồm TortoiseSVN làm ứng dụng khách và tôi chưa từng gặp bất kỳ sự không tương thích nào miễn là các máy khách làm việc trên cùng một kho lưu trữ là cùng một phiên bản.

Bạn có thể vui lòng đăng nội dung của móc hậu cam kết để chúng tôi có thể xây dựng thêm không?

+0

Tôi bắt đầu nghĩ về quyền của bạn về tập lệnh móc. đây là tập lệnh móc của tôi: Cập nhật "[PATH TO svn.exe]" "[PATH TO SERVER WORKING COPY]" --quiet --non-interactive --username [USERNAME] - mật khẩu [PASSWORD] --config -dir "[PATH TO REPOSITORY CONFIGURATION FILE]" nó là tệp .cmd trong thư mục móc của kho của tôi – Adamantine

+0

Chính xác những gì tôi nghĩ. Bây giờ, phiên bản của svn.exe được chỉ định trong '[PATH TO svn.exe]' là gì? Tôi đặt cược bạn có một cuộc xung đột ở đó. – paracycle

+0

Trên một lưu ý phụ, đây là một liên kết đến nơi tôi có giải pháp này từ. Dường như làm việc cho anh ta, nhưng không phải cho tôi: http://www.codersrevolution.com/index.cfm/2008/9/15/Creating-a-postcommit-hook-for-Subversion – Adamantine

0

Nếu bạn đi từ 1,6 xuống 1,5, bạn có thể cần phải hạ cấp. Bạn không bao giờ cho chúng tôi biết cách bạn di chuyển kho lưu trữ của mình nhưng bạn phải tùy thuộc vào cách bạn làm điều đó có được phiên bản của kho lưu trữ.

http://wiki.open.collab.net/wiki/Subversion_Client_FAQ#head-ed7f8e6b7f3265c74eaf7d49dcd4aab85bae2a12

+0

không cần phải hạ cấp kho vì tôi đã xóa hoàn toàn và làm lại khi tôi chuyển đổi phiên bản. – Adamantine

0

Kiểm tra để xem những gì lệnh svn móc của bạn kịch bản sau cam kết đang chạy. Kiểm tra xem phiên bản của lệnh này có khớp với phiên bản của ứng dụng SVN cuối cùng để chạm vào kho lưu trữ của bạn hay không.

Theo mặc định khi sử dụng phiên bản mới của ứng dụng khách lật đổ, nó sẽ nâng cấp kho lưu trữ lên phiên bản đó. Điều này có nghĩa là các khách hàng cũ đột nhiên ngừng hoạt động.

+0

Nó sẽ nâng cấp bản sao làm việc, không phải kho lưu trữ (trừ khi bạn cập nhật chính máy chủ). Thông thường nếu bạn muốn khách hàng cũ hơn bạn chỉ cần làm sạch thanh toán. – Eugene

0

Tôi đã gặp lỗi tương tự. Nhưng nguyên nhân là tôi đã kiểm tra dự án với một khách hàng svn 1.5 và plugin subclipse của tôi trong nhật thực là phiên bản 1.4. Vì vậy, cập nhật plugin subclipse của tôi lên phiên bản 1.6 đã làm các trick. do đó, vấn đề là subclipse 1.4 không làm việc với các dự án đã được kiểm tra với khách hàng svn 1.5.

Hy vọng điều này sẽ giúp ai đó.

1

Trong trường hợp của tôi, tôi đã chuyển mã nhật thực từ nơi này sang nơi khác thì vấn đề đã bắt đầu. Để giải quyết tôi kiểm tra các hình thức dự án repo svn. Sau đó, trong dự án cũ tôi làm sạch tất cả các tập tin svn. (chỉ cần tìm kiếm .svn và delete) sau đó tôi sao chép nội dung vào dự án vừa được kiểm xuất, các thay đổi của tôi trở nên hiển thị và dự án của tôi được cập nhật. Phương pháp này có thể được áp dụng cho các lỗi gây phiền nhiễu khác. Hy vọng điều này sẽ giúp ai đó

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