Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 14 Oct 2000 22:32:11 +0200
From:      Gerhard Sittig <Gerhard.Sittig@gmx.net>
To:        FreeBSD Current <freebsd-current@FreeBSD.ORG>
Subject:   Re: removing global from tree
Message-ID:  <20001014223211.T25237@speedy.gsinet>
In-Reply-To: <200010141816.LAA14274@john.baldwin.cx>; from jhb@FreeBSD.ORG on Sat, Oct 14, 2000 at 11:16:32AM -0700
References:  <20001014155710.P25237@speedy.gsinet> <200010141816.LAA14274@john.baldwin.cx>

next in thread | previous in thread | raw e-mail | index | archive | help
On Sat, Oct 14, 2000 at 11:16 -0700, John Baldwin wrote:
> 
> On 14-Oct-00 Gerhard Sittig wrote:
> > 
> > Up to now I always thought "the Attic" is something CVS
> > itself takes care of when "cvs rm"ing files.  What's that
> > special thing needing manual intervention or special
> > attention you've been talking about lately?  Is it for
> > performance reasons or for the warm fuzzy feelings of having
> > "not too rotten a repo"?
> 
> It is where CVS puts files when you cvs rm them.  You just have
> to do the actual cvs rm/cvs ci.  David was cautious because if
> he had to back the change out, he didn't want to have to try to
> cvs add all of the files back in.

Isn't it true that all the "log", "diff", "up -r" and such
commands still work in the expected way?  That's the reason for
having "the Attic", I thought.  Not to remove the repo file when
the working file expires, but to keep the history and to restore
any previous revision thereof when requested.  Backing out an
rm'ed file should be as difficult as doing the sequence I just
tested to make sure:

  F=toberemoved.txt
  touch $F
  cvs add $F
  cvs ci -m "touched only"
  # creation time (birth, still a lot to learn)

  $EDITOR $F
  cvs ci -m "filled with real content"
  # that's when it's needed and existent

  rm $F
  cvs rm $F
  cvs ci -m "removed the file"
  # that's when it died

  # time passes, nobody misses the gone file, but then ...

  F=toberemoved.txt  # the name is misleading now :)
  cvs log $F
  REV=1.2  # the one before removal
  cvs up -p -r$REV $F > $F
  cvs add $F
  cvs ci -m "revived file $F"
  # and everything could be like before ...

The "cvs log $F" snippet even gives hope for the repo according
to "there could be too much bloat".  Have a look at the changed
lines count, obviously only state changes:

-----------------------------------------------------------------
revision 1.4
date: 2000/10/14 20:10:15;  author: sittig;  state: Exp;  lines: +0 -0
revived it
----------------------------
revision 1.3
date: 2000/10/14 20:08:33;  author: sittig;  state: dead;  lines: +0 -0
removed it
----------------------------
revision 1.2
date: 2000/10/14 20:08:00;  author: sittig;  state: Exp;  lines: +49 -0
filled with rc.conf
----------------------------
revision 1.1
date: 2000/10/14 20:07:24;  author: sittig;  state: Exp;
touched
-----------------------------------------------------------------

I understand that this thread is OT here.  But I feel that David
wants to know this, too.  And maybe others.  So I would like to
renew my question "Why does anyone feel the need to care about
cvs' internals if not for knowing better?".  This must be some
very special requirement why anyone feels like fiddling manually
with it.


virtually yours   82D1 9B9C 01DC 4FB4 D7B4  61BE 3F49 4F77 72DE DA76
Gerhard Sittig   true | mail -s "get gpg key" Gerhard.Sittig@gmx.net
-- 
     If you don't understand or are scared by any of the above
             ask your parents or an adult to help you.


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-current" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20001014223211.T25237>