[ale] Closure Re: Oops - need to reinstate files from 'cvs remove'

John Mills jmmills at telocity.com
Tue Aug 20 17:37:54 EDT 2002


All -

In case the solution to my problem is useful, following J.M.Flederhoff's
suggestions and the CVShome.org FAQ[1], here's what I did:

***************************************************************************
   Process to recover files after erroneous remove/add/commit sequence:

Cause: A number of files in a CVS checkout were renamed, the old-named
       versions were 'cvs remove'd, new-named versions were 'cvs add'ed,
       then all were 'cvs commit'ed.

Problem: Developers had these files checked out and modified; they
       would have problems checking them in - especially Win32 users
       working with a GUI and without (necessarily) knowing the case-
       sensitive filenames.

Recovery:

  1)   Check out current fileset (containing new-name versions only)

  2)   Check out 'remove'd files against '-D "<before_remove_time>"

  3)   Create CVS tag for slightly _before_ <before_remove_time>

  4)   Remove all sticky tags from the checkout

  5)   'Reverse-join' the 'remove'd file (by name) against the tag

  6)   'Update' full checkout, performing adds/removes as needed (I
       removed the renamed versions for the moment.)

  7)   'Commit' the restored fileset

  8)   Users who have checked out these files may be prompted to 'update'
       before they are allowed a 'commit' - they should probably run
       'cvs diff' (or equiv) before updating

***************************************************************************

[1] CVShome.org 'FAQ': "Rolling back the repository based on a date"

 - John Mills


---
This message has been sent through the ALE general discussion list.
See http://www.ale.org/mailing-lists.shtml for more info. Problems should be 
sent to listmaster at ale dot org.






More information about the Ale mailing list