2012-03-14 12 views
7

Potrzebuję napisać skrypt, który wdroży wiele aplikacji cygwin z svn-1.6-17. Wszystkie moje próby zostały zakończone przez zainstalowanie lub svn-1.7, lub nic.Jak zainstalować poprzednią wersję pakietu przez konsolę na cygwin?

Próbowałem zainstalować subversion, subversion-1.6, subversion-1.6-17. Wszystko było bezużyteczne.

Jak mogę zainstalować poprzednią wersję pakietu przez konsolę na cygwin?

Odpowiedz

9

Właśnie przeszedł przez to i Dodaję to pomóc następną osobę. Uwaga: ta sama technika prawdopodobnie zadziała w przypadku każdego pakietu Cygwin.

Mamy produkt innej firmy, który prowadzi bezpośrednią rozmowę z serwerem subversion, ale zachowuje swoje katalogi w formacie 1.6. Jeśli katalogi lokalne zostaną zaktualizowane, narzędzie zepsuje się. Ale potrzebowałem sposobu, aby zrobić svn cleanup na czasy, gdy narzędzie jest w złym stanie.

Oto jak chodził, czyniąc w ten sposób:

  • Cygwin Time Machine na crouchingtigerhiddenfruitbat.org utrzymuje archiwum poprzednich wydań. Każde wydanie składa się z pliku setup.bz2 (skompresowanego pliku setup.ini) oraz zbioru powiązanych archiwów dla pakietów tej wersji.

  • Przeszukałem listę mailingową cygwin-announce w celu aktualizacji subwersji. Ostatnia aktualizacja dla wersji 1.6 miała miejsce 10 czerwca 2011 roku.

  • Następnie przeszedłem przez crouchingtigerhiddenfruitbat.org indexes of previous releases od tamtej daty, aż znalazłem ostatnie wydanie svn 1.6, to było wydanie z 1 lipca 2011.

  • Pobrałem setup.bz2 z odpowiedniego katalogu na crouchingtigerhiddenfruitbat (w tym przypadku: http://ctm.crouchingtigerhiddenfruitbat.org/pub/cygwin/circa/2011/07/01/062011/setup.bz2). Użyłem bunzip2, aby rozpakować plik setup.bz2 do prostego pliku tekstowego. Znalazłem wpis dla subversion i skopiowałem ścieżkę instalacji tarballa (release/subversion/subversion-1.6.17-1.tar.bz2). Sekcja szukasz wygląda następująco:

     
    @ subversion 
    sdesc: "A version control system" 
    ldesc: "Subversion is a version control system that aims to be a compelling 
    replacement for CVS in the open source community" 
    category: Devel 
    requires: libapr1 libaprutil1 libdb4.5 libexpat1 libgcc1 libintl8 libneon27 libsasl2 libserf0_1 libsqlite3_0 zlib0 cygwin 
    version: 1.6.17-1 
    install: release/subversion/subversion-1.6.17-1.tar.bz2 775392 ed0c4a3cc494564c0539dffedcd5e8b6 
    source: release/subversion/subversion-1.6.17-1-src.tar.bz2 5551632 1b41eede9a14ea4cedcc462b06b1f7cb 
    [prev] 
    version: 1.6.16-1 
    install: release/subversion/subversion-1.6.16-1.tar.bz2 1476151 ecbc29b1e1d9694bf8792e3871efa5f8 
    source: release/subversion/subversion-1.6.16-1-src.tar.bz2 5557232 cb12425d2345a57341f16ad0ff559b84 
    

  • Jesteśmy zainteresowani w tym wierszu, który daje względną ścieżkę do 1.6 svn archiwum tar:

     
    install: release/subversion/subversion-1.6.17-1.tar.bz2 775392 
    

  • I pobrane archiwum do dywersji i ekstrahowano go do katalogu tymczasowego (temp). Przenieśliłem zawartość temp/usr/bin do katalogu svn16.

Teraz mogę poprzedzić ten katalog do ścieżki wyszukiwania i uzyskać funkcjonalność SVN 1.6 tak:

PATH=~/svn16:$PATH svn up 

Uwaga: Wygląda jak Cygwin Time Machine nie pozwala katalogu przeglądanie. Oznacza to, że musisz zacząć od root wykopać trochę, aby znaleźć pakiet.

Zaktualizowane za pomocą linków, ponieważ wystarczyło to ponownie.

Uwaga 2: Zaktualizowane linki do crouchingtigerhiddenfruitbat

+0

Nie mogę znaleźć pliku setup.bz2 na ftp://www.fruitbat.org/pub/cygwin/circa/2011/07/01/062011 czy możesz podać linki do dokładnych lokalizacji plików. Próbowałem również używać setup.exe, jak wspomniano na stronie wehikułu czasu, ale pojawia się błąd, jak nie znaleziono pliku setup.ini. – kanna

+0

+7, gdybym mógł. Holy crap, Internet jest lepszym miejscem z tą odpowiedzią. – kevinarpe

+1

Uwaga: ** Maszyna czasu ** Cygwin została przeniesiona! Zobacz nową stronę pod adresem [http://www.crouchingtigerhiddenfruitbat.org/Cygwin/timemachine.html]. Zwróć też uwagę, że stare adresy URL FTP zostały przekonwertowane na adresy URL HTTP o innym prefiksie nazwy hosta, na przykład ** (http: //ctm.crouchingtigerhiddenfruitbat.org/pub/cygwin/circa/...) ** – Docfruitbat

7

1) Pobierz pakiet subversion ze strony pobierania oferowanej przez instalator cygwin. I personally took it from here (64 bit version) i zapisano w pustym katalogu.

EDYCJA: Jeśli chcesz wersję 32-bitową, po prostu usuń "_64" z adresu URL.

Choose A Download site

2) Uruchom instalator i wybrać cygwinInstall from Local Directory gdy prosi do wyboru źródła pobierania.

3) Znajdź wszystko, co jest związane z subversion. Odinstaluj niechcianą wersję i zainstaluj starą. Nowsza wersja jest już odinstalowana na obrazie.

enter image description here

+0

Dziękuję, ale szukam rozwiązania non-GUI. Ponieważ muszę napisać skrypty Pythona, aby wdrożyć cygwin na wielu komputerach. – Jimilian

Powiązane problemy