cvs vs svn...

Elan Ruusamäe glen at delfi.ee
Sat Sep 10 16:03:14 CEST 2005


On Saturday 10 September 2005 15:48, Paweł Sakowski wrote:
> On Sat, 2005-09-10 at 14:40 +0200, Adam Gołębiowski wrote:
> > On Sat, Sep 10, 2005 at 02:27:38PM +0200, Paweł Sakowski wrote:
> > > On Sat, 2005-09-10 at 02:59 +0200, Tomasz Pala wrote:
> > > > I don't get it. Why is:
> > > >
> > > > cvs ci SPECS/foo.spec SOURCES/foo.patch
> > > >
> > > > worse than the same in svn?
> > >
> > > Because it won't work with cvs unless you add -d$(cat SPECS/CVS/Root)
> > > :P
> >
> > It can work, but you'd have to checkout rpm module, which contains
> > SPECS/ and SOURCES/
>
> Yes, but then you have to use the ugly trick of "press Ctrl+C after a
> few lines". It's much cleaner to cvs co SPECS/builder
> SOURCES/rpm.macros.
i proposed variant to this around in 2001+, but it was not taken into account (can't find the mail now from archives). but the idea was:

CVSROOT/modules:

# rpm build
SPECS                         rpm/SPECS adapter adapter.awk mirrors pldnotify.awk builder
SOURCES                       rpm/SOURCES rpm.groups
RPMS                          CVSROOT/Emptydir
BUILD                         CVSROOT/Emptydir
SRPMS                         CVSROOT/Emptydir
rpm                           &SPECS &SOURCES &BUILD &RPMS &SRPMS

(needs to be adjusted for PLD CVS structure)

and having such modules, you can issue

$ cvs co rpm
and you will be checked out just essental files in SPECS and SOURCES and empty other build dirs:

$ cvs co rpm
U SPECS/adapter
U SPECS/adapter.awk
U SPECS/mirrors
U SPECS/pldnotify.awk
U SPECS/builder
U SPECS/rpm.macros
U SPECS/template.spec
U SOURCES/rpm.groups
cvs checkout: Updating BUILD
cvs checkout: Updating RPMS
cvs checkout: Updating SRPMS$

and without any serverside hacking you can do it in clientside too:
$ mkdir -p rpm/{RPMS,BUILD,SRPMS}
$ cd rpm
$ cvs -d :pserver:cvs at cvs.pld-linux.org:/cvsroot co SOURCES/.cvsignore SPECS/{mirrors,adapter{,.awk},fetchsrc_request,builder,bcond-list,repackage.sh}

-- 
glen



More information about the pld-devel-en mailing list