Як переглядати стару версію сховища Subversion через веб-перегляд?


146

Я знаю, як переглядати сховище Subversion мого проекту через його веб-інтерфейс, але, здається, я можу переглядати лише останню редакцію магістралі. Чи є спосіб переглянути старішу версію магістралі через веб-інтерфейс?

Я знаю, як це зробити з командного рядка, але мені потрібно знати, як це зробити за допомогою URL-адрес, тому що я вбудовую ці URL-адреси в документ. Я також знаю, що міг би створити тег у стилі svn магістралі, але я вважаю за краще не робити цього.


4
subversion 1.6 тепер має офіційний синтаксис для цього. Дивіться мою відповідь тут: stackoverflow.com/questions/686892/…
Вім Коен

Відповіді:


185

Додайте щось подібне до URL-адреси вашого сховища:

!svn/bc/<revision_number>/

Напр

http://www.example.com/svnrepository/!svn/bc/3/

Альтернатива

З коментаря Берта Хуйдена :

Якщо ваше сховище розміщено за допомогою Subversion 1.6.0 або новішої версії, ви можете використовувати example.com/svnrepository/?p=3 для того ж результату ... Цей метод / є / задокументований. (? r = перегляд файлу,? p = операційний перегляд URL-адреси). Див. Примітки до випуску підривної версії 1.6


8
Я абсолютно приголомшений цим справою ... (я щойно перевірив і це робить). Мені багато разів говорили, що це неможливо. Зауважте, що згаданий рядок повинен знаходитися відразу після кореня репо в URL-адресі, після цього ви можете розмістити після нього підкаталоги.
rmeador

Будьте уважні з цим: це офіційно не підтримується і може змінитися будь-коли з новим випуском. Незважаючи на те, що це було те саме з самого початку svn ...
Стефан

55
Якщо ваш сховище розміщено за допомогою Subversion 1.6.0 або lateryou, ви можете використовувати example.com/svnrepository/?p=3 для того ж результату ... Цей метод / є / задокументований. (? r = перегляд файлу,? p = операційний перегляд URL-адреси). Дивіться примітки до випуску підривника 1.6
Берт Хуйден

2
Як поправка до публікації BertHuijbens, щоб переглянути попередню редакцію певної папки, ви зробите example.com/svnrepository/path/to/specific/folder/?p=3. З якихось чи інших причин я думав, що? P = 3 прийде першим, і подумав, що опублікую про неї тут
shmeeps

1
Коментар @rmeador дійсно має бути включений у цю відповідь, яка в іншому випадку вводить в оману: ви НЕ тримаєтесь !svn/etc...в кінці своєї URL-адреси . (1) знайдіть свій корінь сховища до svn info .(2) після цього додатка /!svn/bc/<revision_number>/(3), а потім додайте шлях до каталогу чи файлу, якщо такі є.
Боб Штейн



0

Якщо ви використовуєте VisualSVN Server 3.2 або новішу версію, ви можете використовувати для цього завдання веб-браузер історії на базі HTML5. Наприклад, ось дерево репозиторію, як воно існувало в редакції 1001 serfсховища мережевої бібліотеки .

Дивіться опис веб-інтерфейсу .


0

З Інтернету ви можете перейти на сторінку SVN сховища та додати / після неї:

https://<host>/subversion/source/<revision>

наприклад:

https://app.assembla.com/spaces/myproject/subversion/source/1200

-2

Вбудований веб-інтерфейс не дозволяє отримувати старі версії (або будь-яку іншу інформацію, ніж та, яку ви вже бачили). Ви можете встановити сторонне програмне забезпечення для веб-перегляду сховищ, щоб подолати це обмеження. Я ще не використовував жодних, тому не збираюся пропонувати рекомендації, але я впевнений, що й інші (швидкий пошук Google допоможе вам знайти і деякі).


як зазначає SebaGR, ви можете отримати доступ до старих версій, якщо маніпулювати URL-адресою безпосередньо. Однак для цього немає інтерфейсу. Для мене це зовсім несподівано, що це взагалі можливо, оскільки мені вже не раз казали, що це не так
rmeador

4
У Subversion 1.6.0 аргументи? P = і? R =, де додані як загальнодоступні (і задокументовані) функції.
Берт Хуййбен

2
1.5 зробив / не дозволяє переглядати версію через вбудований інтерфейс WebDAV. Від svnbook.red-bean.com/en/1.5/svn-book.pdf :> Чи можу я переглянути старіші редакції? > За допомогою звичайного веб-браузера? Одним словом: ні. Принаймні, не з mod_dav_svn як єдиний ваш інструмент.
Zach Young
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.