[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: how to roll-back whole commit operation

From: Zieg, Mark
Subject: RE: how to roll-back whole commit operation
Date: Mon, 15 Sep 2003 13:40:31 -0400

In general, this is why you apply a tag to the project before you do a huge 
(150-file) commit :-)  Makes it really easy to "cvs update -j before_big_commit 
-j after_big_commit"...

However, if you know WHEN you did the big commit (via "cvs log", etc), then you 
can retroactively insert that "geez-I-wish-I'd-done-this-at-the-time" 
historical tag.

That is, if you did the big commit on September 15 at 3pm, then I think you can 
insert a historical tag just prior to the commit with:

   $ cvs tag -D "2003/09/15 14:55" before_big_commit

Then you can apply a tag to your current tree with:

   $ cvs tag after_big_commit

Then you should be able to rollback the changes:

   $ cvs update -j before_big_commit -j after_big_commit

Finally, you can commit the "rolled-back" tree:

   $ cvs commit -m "rolled back big commit"

And then tag after the rollback, just to give yourself a handy reference for 
next time:

   $ cvs tag after_big_rollback

(Note: I haven't checked the syntax on any of this, and am going from memory...)

-----Original Message-----
From: Dickson, Craig [mailto:address@hidden
Sent: Monday, September 15, 2003 12:59 PM
To: CVS List (E-mail)
Subject: how to roll-back whole commit operation

What is the easiest way to roll-back a commit operation? I know when the commit 
happened and nothing has changed on that branch since the commit happened? I 
could use update with 2 -j options, but there is over 150 changes in the 
commit, so I would have to do it once for each file if I understand it 
correctly since they all have difference revision numbers. Is there are way to 
update my working directory "backwards" so to speak?

reply via email to

[Prev in Thread] Current Thread [Next in Thread]