2009-10-09 6 views
9

Trong trường hợp lật đổ có một lệnh để liệt kê tất cả các kho lưu trữ có sẵn đã đăng ký trên một máy chủ cụ thể không? Ví dụ: Trong chữ hoa, một "cleartool lsvob" sẽ cho tôi danh sách tất cả các cơ sở dữ liệu được phiên bản trong một vùng nhất định. Tôi đã không thể tìm thấy bất cứ điều gì giống như điều này trong lật đổ.Liệt kê tất cả các kho SVN

Cảm ơn

+0

danh sách svn hoạt động. Như được mô tả trong url bên dưới - http://stackoverflow.com/questions/1541577/listing-all-svn-repositories – rajneesh

+0

@rajneesh, lệnh đó không hiệu quả đối với tôi. Tôi đang sử dụng Visual SVN Server 1.9.4. Ngoài ra, URL bạn cung cấp chỉ liên kết ngược lại câu hỏi này. (Không chắc chắn nếu ai đó đã thay đổi nó kể từ khi bạn đăng bình luận đó.) – Sam

Trả lời

6

Không. Mỗi kho lưu trữ phụ là độc lập và không biết gì về những người khác. Sẽ không có cách nào để xác định tất cả các kho lưu trữ lật đổ.

Chúng tôi giữ tất cả các kho của chúng tôi ở một vị trí chuẩn (/data/svn) và có thể dễ dàng và programatically liệt kê tất cả các kho:

ls /data/svn 

Hoặc từ một hệ thống từ xa:

ssh svn ls /data/svn 
+0

OK cảm ơn. Chúng tôi làm tương tự ở đây, nhưng câu hỏi của tôi là liên quan đến một số mạng di sản mà tôi có trong tay - và không biết gì về liên quan đến cách nó được thiết lập vv, Cảm ơn câu trả lời. –

+0

Xem phản hồi của tôi. Tìm kiếm đầy đủ hoạt động. – BobC

+0

@BobC: Không hẳn. Mặc dù đó có thể là một cách khả thi để thực hiện một cái gì đó tương tự, nó chỉ hoạt động nếu tất cả các kho lưu trữ của bạn nằm trên một hệ thống tệp (và không có lý do gì mà chúng thậm chí phải sử dụng một hệ thống tệp). Câu trả lời thực sự là bạn không thể làm điều đó bởi vì kho là độc lập - không có lệnh subversion như vậy. –

1

Bạn có thể tạo ra repos subversion bất cứ nơi nào trên máy chủ của bạn và họ không được liên kết với nhau.

Trong máy chủ của tôi, tôi đặt mọi thứ vào/var/svn/sau đó tôi có thể liệt kê tất cả kho lưu trữ bằng cách sử dụng ssh và liệt kê kho lưu trữ này.

5

SVN repos có một cấu trúc riêng biệt (/ conf,/hooks,/db,/locks), do đó, tìm kiếm một nếu các thành phần của nó sẽ là một sự khởi đầu.

Nếu xác định vị trí/updatedb được cài đặt và cập nhật:

locate /db | grep /db$ 

Hoặc bởi một tìm kiếm đầy đủ:

find/-type d | grep /db$ 

Một tìm kiếm phức tạp hơn sẽ kiểm tra sự tập hợp đầy đủ các thành phần.

0
$ find -iname .svn 

nó nên liệt kê tất cả các thư mục làm việc trên một máy chủ