Как просмотреть старую версию репозитория 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). Смотрите примечания к выпуску Subversion 1.6


8
Я абсолютно ошеломлен, это работает ... (Я только что проверил, и это делает). Мне много раз говорили, что это невозможно. Обратите внимание, что указанная строка должна быть сразу после корня репо в URL, тогда вы можете поместить подкаталоги репо после него.
— rmeador

Будьте осторожны с этим: это официально не поддерживается и может измениться в любое время с новым выпуском. Хотя это было то же самое с самого начала SVN ...
— Stefan

55
Если ваш репозиторий размещен с использованием Subversion 1.6.0 или более поздней версии, вы можете использовать example.com/svnrepository/?p=3 для того же результата ... Этот метод / документирован / задокументирован. (? r = ревизия файла,? p = операционная ревизия URL). См. Примечания к выпуску Subversion 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), а затем добавьте путь к вашему каталогу или файлу, если таковые имеются.
— Боб Стейн


1

Это зависит от используемого вами клиента svn. В случае trac (и, возможно, некоторых других) просто добавьте параметр rev = в строку запроса.

т.е. http://trac.example.com/log/trunk/client/filename?rev=123


3
Пробовал это, не работало, он просто получил самую последнюю версию файла.
— Jcollum


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 в качестве единственного инструмента.
— Зак Янг
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.