I need to write a script that deploy many cygwin applications with svn-1.6-17. All my attempts were finished by installing or svn-1.7, or nothing.
I tried to install subversion, subversion-1.6, subversion-1.6-17. It all was useless.
How I can install previous version of package by console on cygwin?
1) Download a
subversion
package from a download site offered by thecygwin
installer. I personally took it from here (64 bit version) and saved it into an empty directory.EDIT: If you want the 32-bit version, just remov the "_64" from the URL.
2) Start the
cygwin
installer and chooseInstall from Local Directory
when it asks to choose from a download source.3) Locate everything related to
subversion
. Uninstall the unwanted version and install the old one. The newer version is already uninstalled on the image.I just went through this and I'm adding this to help the next person. Note: this same technique will probably work for any Cygwin package.
We have a third party product that talks directly to the subversion server, but keeps its directories in the 1.6 format. If the local directories are updated, the tool breaks. But I needed a way to do a
svn cleanup
for times when the tool got in a bad state.Here's how I went about doing this:
Cygwin Time Machine at crouchingtigerhiddenfruitbat.org maintains archives of previous releases. Each release consists of a setup.bz2 (the compressed setup.ini file) and a collection of related archives for the packages of that release.
I searched the cygwin-announce mailinglist for updates of subversion. The last update for 1.6 was June 10, 2011.
Next, I walked through the crouchingtigerhiddenfruitbat.org indexes of previous releases from that date until I found the last release of svn 1.6, It was the July 1, 2011 release.
I downloaded setup.bz2 from the corresponding directory on crouchingtigerhiddenfruitbat (in this case: http://ctm.crouchingtigerhiddenfruitbat.org/pub/cygwin/circa/2011/07/01/062011/setup.bz2). I used bunzip2 to unpack setup.bz2 to a simple text file. I found the entry for subversion and copied the path of the install tarball (release/subversion/subversion-1.6.17-1.tar.bz2). The section you're looking for looks like this:
We're interested in this line that gives the relative path to the 1.6 svn tarball:
I retrieved the tarball for subversion and extracted it to a temporary directory (temp). I moved the contents of temp/usr/bin to a svn16 directory.
Now, I can prepend that directory to the search path and get the functionality of svn 1.6 like so:
Note: It looks like the Cygwin Time Machine no longer allows directory browsing. This means you'll need to start from the root an dig a bit to find a package.
Updated with links as I just needed to do this again.
Note 2: Updated links to crouchingtigerhiddenfruitbat