Jak przeglądać starą wersję repozytorium Subversion w widoku sieciowym?

146

Wiem, jak przeglądać repozytorium Subversion mojego projektu za pośrednictwem jego interfejsu internetowego, ale wydaje mi się, że mogę przeglądać tylko najnowszą wersję tułowia. Czy istnieje sposób na przeglądanie starszej wersji łącza trunk za pośrednictwem interfejsu internetowego?

Wiem, jak to zrobić z wiersza poleceń, ale muszę wiedzieć, jak to zrobić za pomocą adresów URL, ponieważ osadzam te adresy URL w dokumencie. Wiem też, że mógłbym utworzyć tag pnia w stylu svn, ale wolałbym tego nie robić.

Ross Rogers
źródło
4
Subversion 1.6 ma teraz oficjalną składnię, która to robi. Zobacz moją odpowiedź tutaj: stackoverflow.com/questions/686892/…
Wim Coenen

Odpowiedzi:

185

Dołącz coś takiego do adresu URL swojego repozytorium:

!svn/bc/<revision_number>/

Na przykład

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

Alternatywny

Z komentarza Berta Huijbena :

Jeśli twoje repozytorium jest hostowane przy użyciu Subversion 1.6.0 lub nowszej, możesz użyć example.com/svnrepository/?p=3 dla tego samego wyniku ... Ta metoda / jest / udokumentowana. (? r = wersja pliku,? p = operacyjna wersja adresu URL). Zobacz informacje o wydaniu subversion 1.6

Seb
źródło
8
Jestem absolutnie oszołomiony, że to działa ... (właśnie sprawdziłem i działa). Wiele razy mówiono mi, że to niemożliwe. Zauważ, że wspomniany ciąg musi znajdować się bezpośrednio po katalogu głównym repozytorium w adresie URL, a następnie możesz umieścić po nim podkatalogi repozytorium.
rmeador
Uważaj z tym: to nie jest oficjalnie obsługiwane i może się zmienić w każdej chwili wraz z nową wersją. Chociaż tak jest od samego początku svn ...
Stefan
55
Jeśli twoje repozytorium jest hostowane przy użyciu Subversion 1.6.0 lub latery, możesz użyć example.com/svnrepository/?p=3 dla tego samego wyniku ... Ta metoda / jest / udokumentowana. (? r = wersja pliku,? p = operacyjna wersja adresu URL). Zobacz informacje o wydaniu
Subversion
2
Podobnie jak poprawka do posta BertHuijbens, aby wyświetlić poprzednią wersję określonego folderu, należy zrobić przykład.com/svnrepository/path/to/specific/folder/?p=3. Z jakiegoś powodu pomyślałem, że? P = 3 będzie pierwsze, i pomyślałem, że
napiszę
1
Komentarz @rmeador naprawdę musi zostać włączony do tej odpowiedzi, która w innym przypadku jest myląca: NIE trzymasz !svn/etc...się końca adresu URL . (1) znajdź katalog główny repozytorium przez svn info .(2) po dodaniu /!svn/bc/<revision_number>/(3), a następnie dołącz ścieżkę do katalogu lub pliku, jeśli taki istnieje.
Bob Stein
0

Z sieci możesz przejść do strony repozytorium SVN i dodać / po niej:

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

na przykład:

https://app.assembla.com/spaces/myproject/subversion/source/1200
Michael Haephrati
źródło
-2

Wbudowany interfejs sieciowy nie pozwala na pobieranie starych wersji (ani żadnych innych informacji niż te, które już widziałeś). Aby obejść to ograniczenie, można zainstalować oprogramowanie innej firmy do przeglądania repozytoriów internetowych. Sam nie korzystałem z żadnych, więc nie zamierzam oferować rekomendacji, ale jestem pewien, że inni to zrobią (szybkie wyszukiwanie w Google również pomoże Ci je znaleźć).

rmeador
źródło
jak zauważa SebaGR, możliwy jest dostęp do starszych wersji poprzez bezpośrednie manipulowanie adresem URL. Nie ma jednak interfejsu użytkownika, który mógłby to zrobić. Zdziwiłem się, że jest to w ogóle możliwe, ponieważ wielokrotnie powtarzano mi, że to nie jest ...
rmeador
4
W Subversion 1.6.0 argumenty? P = i? R = zostały dodane jako funkcja publiczna (i udokumentowana).
Bert Huijben
2
1.5 nie pozwala / nie pozwala na przeglądanie wersji przez wbudowany interfejs WebDAV. Ze strony svnbook.red-bean.com/en/1.5/svn-book.pdf :> Czy mogę wyświetlić starsze wersje ? > Za pomocą zwykłej przeglądarki internetowej? Jednym słowem: nie. Przynajmniej nie z mod_dav_svn jako jedynym narzędziem.
Zach Young