Subject: Re: CVS & import scripts
To: None <vax@ccwf.cc.utexas.edu>
From: Niklas Hallqvist <niklas@appli.se>
List: current-users
Date: 08/01/1995 08:31:08
>>>>> "VaX#n8" == n8  <VaX> writes:

VaX#n8> So I suppose my questions are: 1) should the CVS directories
VaX#n8> really be sent to all sup'ers?  1a) are the CVS files present
VaX#n8> in the tarballs?  2) if they shouldn't, and assuming they are
VaX#n8> being sent anyway, should I get rid of them before
VaX#n8> cvs-importing?  2a) what is the proper way of getting rid of
VaX#n8> them, an ignore line, or some crazy "find"-"rm" combination?

1)	Don't think so, do you use a mirror?  Perhaps it's
	misconfigured?
1a)	I seem to recall that, yes.
2)	Yes!
2a)	find . -type d -name CVS -exec rm -rf {} \;

VaX#n8> Okay, now, say we just sup'ed, cvs-imported.  Can we get rid
VaX#n8> of the files in the sup area, or does sup need them to stay?
VaX#n8> If sup needs them to stay, this leaves us with three times the
VaX#n8> source code; one in the sup destination area, one in the
VaX#n8> working area, and one (possibly very large) copy in the
VaX#n8> repository.  That's a lot.

Yep, it is.  You really don't need it checked out always, but when you
sup you need them.  The real solution would be a cvssup command, which
used the repository instead of a sup area.  Until someone (me?) finds
the time to *really* integrate CVS and SUP, the easiest way is to keep
two checked out trees.  If you're really concerned about space, you
could be creative with union mounts: After checkout of your own tree,
remove the files (not the CVS dirs) and union-mount it above the
sup-area.  In this case you must serialize sup and compiles otherwise
your env will get messed up, for sure.  I wouldn't recommend this,
unless you're very short of disk.  What I do, is that I keep full
source in the sup area and repository, but in my work area I don't
check out src/sys/arch/XXX where XXX is irrelevant to my setup.

VaX#n8> Is this really optimal?  Is this how everyone is doing it?  Or
VaX#n8> -is- anyone else really even using CVS on their supped-stuff.
VaX#n8> I'm frustrated.

No, a cvssup command would be more optimal, and a CVS-aware make would
be nice as well.  I don't know about others, but I'm doing it the
space-consumptive way, yes.

The CVS-aware make would be really nice I think.  Just supply a tag to
be used (unless wanting the head of all files) and get the make to
recurse through the repository, putting output in an obj/-hierarchy.
Then one would never checkout whole trees, just small modules.
Any takers?

Niklas