2009-02-12 26 views
5

Hãy để tôi bắt đầu bằng cách giải thích thiết lập của chúng tôi:TortoiseSVN: Điều gì gây ra dấu kiểm màu xám?

Tôi đang làm việc với một số nhà thầu. Họ đang sử dụng Visual Source Safe để kiểm soát nguồn và công ty chúng tôi đang sử dụng Subversion. Cứ vài ngày họ phôi một checkin để kho của chúng tôi bằng cách thực hiện các bước sau:

  1. Thanh toán từ kho lưu trữ của chúng tôi (họ là những người duy nhất làm việc trên nó vì vậy đây không thực sự làm bất cứ điều gì)
  2. Sao chép vào thư mục tất cả các file ứng dụng
  3. Commit lại

của một quá trình khủng khiếp và chúng tôi có kế hoạch để giải quyết nó trong phiên bản kế tiếp nhưng nó hoạt động. Trừ khi đôi khi không. Đôi khi sau khi họ thực hiện cam kết, một số tệp có lớp phủ dấu kiểm màu xám.

Tôi không chắc điều này có nghĩa là gì. Googling xung quanh ngụ ý nó có thể có một cái gì đó để làm với khóa nhưng không ai là rõ ràng khóa bất cứ điều gì! Các tập tin dường như có được cam kết, nhưng họ đang mất tích khi tôi làm một kiểm tra. Tôi chắc chắn rằng tôi đang thiếu một cái gì đó.

Có ai có thể giải thích điều gì cồng chiêng và cách khắc phục không?

Trả lời

10

từ here:

Nếu bạn đã thiết lập các svn: nhu cầu-lock trên một tập tin, Subversion làm cho tập tin đó ReadOnly cho đến khi bạn có được một khóa trên tập tin đó. Tệp chỉ đọc có lớp phủ này để cho biết rằng bạn phải nhận khóa trước khi bạn có thể chỉnh sửa tệp đó.

Chúng tôi không sử dụng các công cụ cần khóa ở đây, vì vậy tôi không thể giải thích thêm. Đó là một khởi đầu mặc dù.

Chỉnh sửa: Vì chúng đang sử dụng VSS, các tệp sẽ có thuộc tính chỉ đọc khi chúng không được kiểm tra. TortoiseSVN có thể giải thích điều này là có bộ khóa nhu cầu.

+0

Moose, bạn đá, đã đấu tranh với điều này một tuần trong tuần –

+0

Hài hước, tôi đã chỉ tự hỏi về điều này ngày khác. Tôi đoán quản trị viên SVN đã thực hiện một số thay đổi để giúp "khuyến khích" các nhà phát triển VSS của chúng tôi chuyển sang SVN. – Powerlord

4

Đây là những tệp có thuộc tính svn: needs-lock được đặt. Để chỉnh sửa các tệp này, trước tiên bạn phải khóa chúng.

Dưới đây là lời giải thích từ tập tin trợ giúp TortoiseSVN của:

Nếu bạn đã thiết lập các svn: nhu cầu-lock tài sản trên một tập tin, Subversion làm rằng tập tin chỉ đọc cho đến khi bạn có được một khóa vào đó tập tin. Các tệp như vậy có lớp phủ này để cho biết rằng bạn có để nhận khóa trước khi bạn có thể chỉnh sửa tệp đó.

Điều này thường được sử dụng với tệp nhị phân (hình ảnh, tài liệu từ, v.v.) không thể dễ dàng được hợp nhất khi được một số người chỉnh sửa. Khóa ngăn chặn tập tin có thể được chỉnh sửa bởi nhiều người cùng một lúc.

Nếu bạn muốn loại bỏ thuộc tính svn: needs-lock, sau đó nhấp chuột phải vào tệp, chọn TortoiseSVN -> Thuộc tính và xóa thuộc tính.

Cập nhật: những gì có thể gây ra một tập tin để có svn: nhu cầu-lock tài sản:

  • hoặc nó được một cách rõ ràng được thiết lập bởi một người nào đó
  • hoặc bạn có một số quy tắc trong file lật đổ config (TortoiseSVN -> Cài đặt -> Chỉnh sửa tập tin cấu hình lật đổ). Kiểm tra phần [auto-props] của tập tin đó. Ví dụ: chúng tôi tự động đặt thuộc tính cần khóa trên tất cả các tệp MS-Office, bằng cách thêm phần mở rộng tệp tương ứng vào phần [tự động tạo] của tệp cấu hình subversion.
+0

Điều gì sẽ khiến điều đó xảy ra, không ai khóa rõ ràng bất cứ điều gì. Quá trình này chính xác như tôi đã mô tả. –

+0

Người đàn ông, tôi dường như không thể nhập đủ nhanh hôm nay. – Moose

+0

có thể là svn xem tệp là chỉ đọc và sử dụng nó làm cài đặt đạo cụ? – Tim

0

Các tệp nhị phân đó phải không? Nếu có nghĩa là các tập tin được khóa độc quyền trên máy chủ, để không ai có thể kiểm tra chúng cùng một lúc.

+0

Không, thường xuyên cs, aspx, và các tập tin khác –

1

Điều này có thể hữu ích?

http://www.nabble.com/Document-locked,-won%27t-release-td15162692.html

thuộc tính chỉ đọc được thiết lập.

Họ cần sửa lại điều đó ở bên cạnh họ.

và chắc chắn buộc họ phải sử dụng hệ thống kiểm soát phiên bản của bạn

+0

Tôi nghĩ rằng đây là chính xác nó. VSS đặt các tệp không được kiểm tra thành chỉ đọc. – Moose

1

Nếu bạn đang đi để tiếp tục với kế hoạch khủng khiếp này, tôi có thể đề nghị bạn điều tra kịch bản svn_load_dirs? Nó được sử dụng để áp dụng các thay đổi từ một hệ thống phân cấp thư mục không được phiên bản cho một repo SVN. Trong trường hợp này, các tệp không được phiên bản của bạn sẽ thực sự là từ VSS, nhưng không được tính là phiên bản cho mục đích này. Về cơ bản, nó nhận thấy những gì đã được thêm vào và những gì đã được gỡ bỏ, cung cấp cho bạn một cơ hội để nói với nó rằng một số những người thêm/loại bỏ đã thực sự đổi tên/di chuyển, và sau đó nó áp dụng những thay đổi để repo của bạn. Đó là cách, cách tốt hơn so với chỉ dán các tập tin vào một bản sao làm việc, như cách tiếp cận sau sẽ không xử lý đúng cách thêm/gỡ bỏ các tập tin hoặc thư mục.

Để trả lời câu hỏi ban đầu của bạn, dấu kiểm màu xám có nghĩa là tệp chỉ đọc. Điều này thường chỉ gặp phải khi tập tin cần phải được khóa để ghi vào nó, nhưng tôi khá chắc chắn nó sẽ đánh dấu bất kỳ tập tin chỉ đọc với dấu kiểm màu xám, không chỉ những người có svn: needs-lock đặt trên nó . Đối với lý do tại sao các tập tin sẽ không hiển thị khi bạn kiểm tra, đó là gần như chắc chắn bởi vì họ chưa bao giờ kiểm tra ... nếu họ đang ở trong máy chủ, họ sẽ hiển thị trong bản sao làm việc của bạn khi bạn cập nhật/kiểm tra (hoặc nó sẽ cho bạn một thông báo lỗi rõ ràng về một cái gì đó cản trở chúng).

0

Để hiển thị cho bạn lớp phủ biểu tượng tệp và thư mục TortoiseSVN phải tìm nạp trạng thái mỗi khi bạn mở thư mục đó trong trình khám phá. Điều này thường mất một phần nhỏ của một giây, nhưng có thể mất nhiều thời gian hơn nếu bạn có một đĩa cứng chậm hoặc một thư mục rất lớn. Dưới đây là một số điều cần chú ý: Ổ đĩa mạng có thể rất chậm phản hồi, vì vậy bạn có thể phải tắt lớp phủ biểu tượng cho các ổ đĩa đó. Tuy nhiên, lược đồ bộ nhớ đệm thường làm cho nó khả thi. Bất cứ khi nào thời gian sửa đổi cuối cùng của một tệp đã thay đổi, TortoiseSVN cần thực hiện một cách khác biệt hoàn chỉnh (!) Của tệp đó để tìm hiểu xem nó có thay đổi hay không. Nếu bạn thường xuyên thay đổi tệp, hãy hoàn tác các thay đổi và lưu tệp lại, bạn sẽ gặp phải sự cố khi duyệt web. Bạn có thể sửa chữa điều kiện đó bằng cách thực hiện Dọn dẹp các thư mục sao chép hoạt động của bạn. Có một số máy quét Virus xung quanh ảnh hưởng đến TortoiseSVN.Hầu hết thời gian họ khóa các tập tin bên trong thư mục .svn Status, có thể khiến TortoiseSVN treo hoặc trở nên rất chậm. Đôi khi bạn thậm chí có thể gặp lỗi Truy cập bị từ chối. Hãy thử cấu hình trình quét vi rút của bạn để nó bỏ qua thư mục .svn. Nếu bạn đang làm việc trên Windows XP thì bạn cũng có thể vô hiệu hóa các thư mục zip. Điều này cũng sẽ làm tăng tốc độ duyệt web. 1.Chọn Chạy từ trình đơn bắt đầu 2.Nhập regsvr32/u% windir% \ system32 \ zipfldr.dll tại dấu nhắc và bấm ok 3.Thay đổi sẽ có hiệu lực ngay lập tức, nhưng bạn có thể phải khởi động lại Windows cho tất cả dấu vết của sự hỗ trợ ZIP tích hợp để biến mất. Nếu, bất cứ lúc nào, bạn muốn bật lại hỗ trợ ZIP tích hợp sẵn của Windows XP, chỉ cần làm theo các bước sau: 4.Chọn Chạy từ trình đơn bắt đầu 5. Loại regsvr32% windir% \ system32 \ zipfldr.dll tại dấu nhắc và bấm ok 6.Thay đổi sẽ có hiệu lực ngay lập tức, nhưng bạn có thể phải khởi động lại Windows cho tất cả dấu vết của sự hỗ trợ ZIP tích hợp sẵn có. Kiểm tra hệ thống của bạn để tìm phần mềm gián điệp, phần mềm thực thi chính sách hoặc công cụ tìm kiếm địa phương (như máy tính để bàn của Google). Những người có thể can thiệp vào việc sử dụng bình thường khá hiệu quả.

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