Using svn to checkout a deprecated port.
Christopher Sean Hilton
chris at vindaloo.com
Sat Feb 23 20:45:16 UTC 2013
On Mon, Feb 18, 2013 at 11:23:09PM -0500, Christopher Sean Hilton wrote:
> On Tue, Feb 19, 2013 at 11:43:03AM +1030, Shane Ambler wrote:
> > On 19/02/2013 05:53, Christopher Sean Hilton wrote:
> > > Hi,
> > >
> > > I need to use svn to checkout the old "security/cfs" port so I can
> > > do a one-time transfer of some data off of a USB drive. At the end of
> > > the day, I just need the one port so if the cvs repository is
> > > available I could also get it that way. In either case, I'm trying to
> > > do the equivalent of:
> > >
> > > $ cvs co -r '2011/10/01' $FreeBSDportsRepo security/cvs
> > >
> > > in English, I want to checkout security/cvs from ports as it existed
> > > on October 1st, 2011 (the port was deprecated on November 1st 2011.
> > >
> > It appears that checking out a deleted path doesn't work even if you
> > specify a rev that it exists in. But checking out the parent works.
> > I'd check it out to another dir then copy the specific files over.
> > svn co -r 282000 svn://svn.freebsd.org/ports/head/security/
> > You can change the svn.freebsd.org to svn0.us-east.FreeBSD.org or
> > svn0.us-west.FreeBSD.org
> > For reference I went to http://svnweb.freebsd.org/ports and clicked the
> > revision number at the top (above the sticky revision box) then tried#
> > jumping to a few different rev numbers till I got close to a commit date
> > just before 2011/10/01. Once you have the rev you want you can go back
> > up to ports (link at top of page) and enter a sticky revision. Then you
> > can go to security/cfs and view the files.
> Thanks for the quick answers everyone, the trick seems to be three steps:
> # prime the tree with a guess as to the revision that you need.
> svn co -r <something> --depth immediates svn://<path>/security
> # refine the guess using the svn logs.
> cd security/cfs && svn log
> # checkout the revision that you wanted. ( updating didn't work...)
> cd ../.. && rm -rf security && svn co -r <target-from-log> svn
In the case of cfs, this also worked:
$ svn co -r 282000 --depth immediates svn://<svn_path>/security
$ (cd security/cfs && svn log) | less
## the log revealed that the last revision was 281170
$ cd security
$ svn up -r 281170 cfs
$ cd cfs && su
$ make; make install; make package clean
Thanks again for the help.
"There will be an answer, Let it be."
e: chris -at- vindaloo -dot- com
More information about the freebsd-questions