Hello all, I'm using CVS 1.10 and I am quite happy with it; however there is one very important feature missing: CVS rename The manual describes some workarounds, but these are quite unsatisfactory; I suspect many to what I have been doing, just delete and add it at the new location and loosing convenient access to the history. I am very fond of the simple architecture of cvs/rcs, i.e. every file contains all the information, you don't need any master database stored somewhere. In my mind it is critical to maintain this feature after adding the rename feature. To implement rename a name-location fields needs to be added to the standard revision information (author, date, state, log). This fields can be added in several ways: * use an existing fields (i.e. author). * use special symbol (dirty !?) * add a new fields in such a way that the currrent rcs parser would ignore, i.e. not complain about - maybe not possible !? >> Making the rcs file format backwards incompatible should be avoided if at all possible. Modifications: 1. Add name-location field that is associated with every revision (like author). The location fields would be a path name starting from CVS_ROOT - it would not include CVS_ROOT path prefix => easy to relocate repository. * the location in the latest revision would be in sync with cvs repository location * the name in the latest revision would also be the name of the file in the cvs repository 2. cvs checkout: find revision check if name-location field exists, if so check file out to that location and under that name 3. cvs rename insert pending name and location change 4. cvs commit (this should be integrated in rcs) move the updated file to the new name-location (often no change) The design has two important attributes: * The cvs repository will look the same for the main branch for this new cvs and the current one. This means that when a user looks at the repository, he sees the most recent layout - which is natural. * All information is still stored in one file only. - - - - - I would like to contribute to this change, but I think there are some cvs-gurus who are far more adept to do it - at least I have some learning to do; maybe in a few months time I will be ready. To me this is a most-wanted feature because without it you can't reorganize your code unless loosing history (the workaround is ugly) and so many probably don't do it ! Best regards, Bergur Ragnarsson ICELAND