Как просмотреть старую версию репозитория 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

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

Из Интернета вы можете перейти на страницу хранилища SVN и добавить / после нее:

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

например:

https://app.assembla.com/spaces/myproject/subversion/source/1200
Майкл Хефрати
источник
-2

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

rmeador
источник
Как отмечает 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 в качестве единственного инструмента.
Зак Янг