Bagaimana cara menelusuri revisi lama repositori Subversion melalui tampilan web?


146

Saya tahu cara menelusuri repositori Subversion proyek saya melalui front-end webnya, tetapi tampaknya saya hanya dapat menelusuri revisi trunk terbaru. Apakah ada cara untuk menelusuri revisi trunk yang lebih lama melalui UI web?

Saya tahu bagaimana melakukan ini dari command-line, tetapi saya perlu tahu bagaimana melakukan ini menggunakan URL, karena saya menanamkan URL ini ke dalam dokumen. Saya juga tahu saya bisa membuat tag bagasi bergaya svn, tapi saya lebih suka tidak melakukannya.


4
subversi 1.6 sekarang memiliki sintaksis resmi untuk melakukan ini. Lihat jawaban saya di sini: stackoverflow.com/questions/686892/…
Wim Coenen

Jawaban:


185

Tambahkan sesuatu seperti ini ke URL repositori Anda:

!svn/bc/<revision_number>/

Misalnya

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

Alternatif

Dari komentar Bert Huijben :

Jika repositori Anda dihosting menggunakan Subversion 1.6.0 atau yang lebih baru, Anda dapat menggunakan example.com/svnrepository/?p=3 untuk hasil yang sama ... Metode ini / didokumentasikan. (? r = revisi file,? p = revisi operasional URL). Lihat catatan rilis subversi 1.6


8
Saya benar-benar terpana ini berfungsi ... (Saya baru saja memeriksa dan ternyata berhasil). Saya telah diberitahu berkali-kali bahwa itu tidak mungkin. Perhatikan bahwa string yang disebutkan harus tepat setelah root repo di URL, maka Anda dapat menempatkan subdirep repo setelahnya.
rmeador

Hati-hati dengan itu: ini tidak didukung secara resmi dan dapat berubah kapan saja dengan rilis baru. Meskipun sudah sama sejak awal svn ...
Stefan

55
Jika repositori Anda di-host menggunakan Subversion 1.6.0 atau yang lebih baru, Anda dapat menggunakan example.com/svnrepository/?p=3 untuk hasil yang sama ... Metode ini / didokumentasikan. (? r = revisi file,? p = revisi operasional url). Lihat catatan rilis subversi 1.6
Bert Huijben

2
Sama seperti amandemen pada posting BertHuijbens, untuk melihat revisi sebelumnya dari folder tertentu, Anda akan melakukan example.com/svnrepository/path/to/specific/folder/?p=3. Untuk beberapa alasan atau lainnya, saya pikir? P = 3 akan didahulukan, dan saya pikir saya akan memposting tentang dia di sini
shmeeps

1
Komentar oleh @rmeador benar-benar perlu dimasukkan ke dalam jawaban ini, yang jika tidak menyesatkan: Anda TIDAK menempel !svn/etc...pada akhir URL Anda . (1) cari Repositori Root Anda dengan svn info .(2) setelah itu tambahkan /!svn/bc/<revision_number>/(3) kemudian tambahkan path ke direktori atau file Anda, jika ada.
Bob Stein




0

Dari web, Anda dapat pergi ke halaman repositori SVN dan menambahkan / setelahnya:

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

sebagai contoh:

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

-2

Antarmuka web bawaan tidak memungkinkan pengambilan revisi lama (atau info apa pun selain yang telah Anda lihat). Anda dapat menginstal perangkat lunak penjelajahan repositori berbasis web pihak ketiga untuk mengatasi batasan ini. Saya belum pernah menggunakan sendiri, jadi saya tidak akan menawarkan rekomendasi, tetapi saya yakin orang lain akan (pencarian google cepat akan membantu Anda menemukan beberapa juga).


seperti yang dicatat SebaGR, dimungkinkan untuk mengakses revisi yang lebih lama jika Anda memanipulasi URL secara langsung. Namun tidak ada UI untuk melakukan ini. Ini cukup mengejutkan bagi saya bahwa ini mungkin sama sekali, karena saya sudah berulang kali mengatakan tidak ... adalah
rmeador

4
Dalam Subversion 1.6.0 argumen? P = dan? R = di mana ditambahkan sebagai fitur publik (dan didokumentasikan).
Bert Huijben

2
1.5 tidak / tidak memungkinkan revisi penelusuran melalui antarmuka WebDAV bawaan. Dari svnbook.red-bean.com/en/1.5/svn-book.pdf :> Dapatkah Saya Melihat Revisi Lama? > Dengan browser web biasa? Dalam satu kata: nggak. Setidaknya, tidak dengan mod_dav_svn sebagai satu-satunya alat Anda.
Zach Young
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.