Làm thế nào để tìm ra phiên bản kho lưu trữ Subversion?


76

Làm cách nào tôi có thể xác định phiên bản hiện tại của kho lưu trữ của mình để xem liệu tôi có cần nâng cấp nó (nâng cấp svnadmin) hay không?

Trên thực tế, tôi đang lưu trữ SVN với bên thứ 3 và tôi muốn tìm hiểu xem liệu tôi có cần yêu cầu họ nâng cấp repo của tôi hay không.

Tôi đang hỏi vì máy chủ 1.5 sẽ giữ phiên bản repo ở 1.4, trừ khi tôi bỏ lỡ điều gì đó?

Câu trả lời:


46

Có một cái nhìn vào <REPO>/db/format. Sau khi nâng cấp lên định dạng 1.5, formattệp của tôi hiển thị:

3
layout sharded 1000

Trước đây nó từng là:

2

11
Nó là '4' cho Subversion 1.6. Đây là / có thể / là cách tốt nhất để xác định phiên bản của kho lưu trữ.
James Skemp

2
thông tin này ở đâu Tôi đang sử dụng windows và dùng rùa cạn.
Kugel

12
-1. Người hỏi đã nói rằng repo là trên máy chủ SVN của bên thứ ba. Họ không cung cấp cho bạn quyền truy cập vào kho lưu trữ vật lý. Không có cách nào để người hỏi truy cập trực tiếp vào tệp này. BTW, không có đối số, đây là cách tốt nhất để xác định phiên bản nếu bạn có quyền truy cập vào nó.
Ken Gentle

Tôi có url repo của mình và thấy các nhánh, thẻ, thư mục xe tải nhưng không thấy bất kỳ thư mục db hoặc định dạng nào? Tôi có thể tìm thấy thư mục Db hoặc db / format này ở đâu? Tôi không có quyền truy cập vào các cấp cao hơn của cấu trúc thư mục repo?
siêu tân tinh

2
@supernova, bạn cần phải tự vào hệ thống tệp nơi svn lưu trữ tất cả các tệp của nó. Không xem nội dung svn thông qua máy khách svn.
JackDev

27

Lấy httphoặc httpsliên kết đến kho lưu trữ của bạn và cắt và dán nó vào trình duyệt. Phiên bản máy chủ kho lưu trữ Subversion xuất hiện ở chân trang theo mặc định.

Được cung cấp bởi Subversion phiên bản 1.4.5 (r25188).

Người ta sẽ giả định rằng một 1.4máy chủ sẽ không chạy với một 1.5kho lưu trữ.

Để biết chi tiết, hãy xem Ghi chú phát hành Subversion 1.5

Cảm ơn @Omus đã sửa chữa.


5
Tôi nghĩ rằng đây là phiên bản phần mềm máy chủ SVN, không phải phiên bản kho lưu trữ?
Sumrak

1
nhưng nó có thể chạy theo hướng khác, không?
Sumrak

Đó là nơi mà "một trong những giả định" xuất hiện - có thể, nhưng không có nhiều ý nghĩa, phải không?
Ken Gentle

11
"Máy chủ Subversion 1.5 hoạt động với các kho lưu trữ 1.4 trở lên và nó sẽ không nâng cấp các kho lưu trữ đó lên 1.5 trừ khi được yêu cầu cụ thể thông qua lệnh nâng cấp svnadmin." - subversion.tigris.org/svn_1.5_releasenotes.html#repos-upgrades Vì vậy, bạn không nên cho :)
James Skemp

Điều này không hoạt động đối với máy chủ VisualSVN - nó dường như không cung cấp số phiên bản.
Richard Beier

6

Bạn có thể kiểm tra nội dung của tệp "định dạng" trong thư mục "db". Nếu nó hiển thị 3 thì nó đã được nâng cấp lên 1.5 (đó là phiên bản của hệ thống sợi được cập nhật). Nếu nó là 2 thì nó là 1.4 hoặc lớn hơn.


5

Có sự khác biệt giữa Phiên bản / Lược đồ kho lưu trữ Subversion (1) và Phiên bản FSFS của Kho lưu trữ Subversion (2).

FSFS, trái ngược với Berkeley DB, hoặc FSX đang phát triển, là một phương pháp lưu trữ dữ liệu phụ trợ. FSFS là "một triển khai hệ thống tệp được phiên bản sử dụng trực tiếp hệ thống tệp OS gốc".

(1): Phiên bản / lược đồ của kho lưu trữ Subversion được tìm thấy trong tệp định dạng / [REPO]. Các phiên bản hiện tại từ tài liệu Subversion repos_upgrade_HOWTO là:

SUBVERSION VERSION NUMBER           SCHEMA VERSION
-------------------------           --------------
Up to and including 0.27            1
0.28 - 0.33.1                       2
0.34 - 1.3                          3
(no released version used this)     4
1.4 -                               5

(2): Tuy nhiên, định dạng FSFS của kho lưu trữ được tìm thấy trong tệp định dạng [REPO] / db /. Các phiên bản hiện tại nằm trong tài liệu Cấu trúc FSFS libsvn_fs_fs , trong phần Định dạng hệ thống tệp . Họ hiện là:

Format 1, understood by Subversion 1.1+
Format 2, understood by Subversion 1.4+
Format 3, understood by Subversion 1.5+
Format 4, understood by Subversion 1.6+
Format 5, understood by Subversion 1.7-dev, never released
Format 6, understood by Subversion 1.8
Format 7, understood by Subversion 1.9
Format 8, understood by Subversion 1.10+

Ngoài ra, kể từ Subversion 1.9, giờ đây bạn có thể sử dụng lệnh svnadmin thông tin để lấy cả Phiên bản / Lược đồ kho lưu trữ Subversion, cũng như Phiên bản FSFS của Kho Subversion (Xem: Ghi chú phát hành Subversion 1.9 - Cải tiến FSFS cũng như Ghi chú phát hành Subversion 1.9 - svnadmin Thay đổi và Cải tiến )


4

Đối với Máy chủ VisualSVN, ngay cả khi nó sử dụng các trang tùy chỉnh, bạn vẫn có thể xem nguồn trang :)


Tôi đã có thể xác định phiên bản của kho lưu trữ mà tôi cần sử dụng với câu trả lời này. Suy nghĩ thấu đáo!
Bruno Finger

1

Tôi cũng sẽ đề xuất giả mạo tiêu đề phản hồi vì một số cài đặt máy chủ ( Máy chủ VisualSVN ) sử dụng các trang tùy chỉnh, tiếc là không hiển thị phiên bản máy chủ Subversion.

Bạn có thể sử dụng Fiddler2 để giả mạo yêu cầu / phản hồi đến máy chủ. Nếu bạn đang sử dụng kết nối HTTPS, hãy nhớ chọn tùy chọn "Giải mã lưu lượng HTTPS" trong: Tools-> Fiddler Options-> HTTPS


0

Nếu bạn sử dụng Máy chủ VisualSVN, bạn có thể tìm định dạng của kho lưu trữ thông qua bảng điều khiển Trình quản lý Máy chủ VisualSVN hoặc qua PowerShell. Đọc bài viết KB135: Tìm hiểu các loại và định dạng của kho lưu trữ Subversion để biết thêm thông tin.

Trình quản lý máy chủ VisualSVN

Làm theo các bước sau để tìm ra định dạng của kho lưu trữ:

  1. Khởi động Trình quản lý Máy chủ VisualSVN bảng điều khiển .
  2. Nhấp chuột phải vào kho lưu trữ và nhấp vào Thuộc tính .
  3. Nhấp vào tab Chi tiết .

PowerShell

Làm theo các bước sau để tìm định dạng của kho lưu trữ qua PowerShell:

  1. Khởi động bảng điều khiển PowerShell .
  2. Thực hiện lệnh sau: Get-SvnRepository MyRepo | Format-List


-2

Tôi nghĩ những gì bạn muốn là "svnlook trẻ nhất"


nó cũng tìm kiếm "định dạng" tệp, tệp này không được tìm thấy tại kho của tôi.
Steve K

3
svnlook trẻ nhất chỉ hiển thị số bản sửa đổi mới nhất trong repo. Không phải phiên bản của cơ sở dữ liệu repo.
8DH
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.