/[meta-cvs]/meta-cvs/F-9A67B1893CE1CF23455CD1EF0F486B65
ViewVC logotype

Diff of /meta-cvs/F-9A67B1893CE1CF23455CD1EF0F486B65

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.7.2.7 by kaz, Sat Jan 31 23:07:09 2004 UTC revision 1.7.2.8 by kaz, Sun Feb 1 05:10:15 2004 UTC
# Line 43  Line 43 
43    
44    (let (filemap all-version-tags all-branch-tags attic-made)    (let (filemap all-version-tags all-branch-tags attic-made)
45      (current-dir-restore      (current-dir-restore
       (chatter-info "descending into ~a~%" source-dir)  
46        (chdir source-dir)        (chdir source-dir)
47        (for-each-file-info (fi ".")        (for-each-file-info (fi ".")
48          (when (and (directory-p fi)          (when (and (directory-p fi)
# Line 60  Line 59 
59                             (canonicalize-path (path-cat no-attic-dir basename)))                             (canonicalize-path (path-cat no-attic-dir basename)))
60                           (f-name (mapping-generate-id :suffix (suffix basename)                           (f-name (mapping-generate-id :suffix (suffix basename)
61                                                        :no-dir t))                                                        :no-dir t))
62                           (rcs-name (apply #'path-cat `(,*up-dir* ,target-dir                           (orig-rcs (path-cat source-dir canon-name))
63                                                         ,@(if attic-p '("Attic"))                           (new-rcs (apply #'path-cat `(,target-dir
64                                                         ,(format nil "~A,v"                                                        ,@(if attic-p '("Attic"))
65                                                                  f-name)))))                                                        ,(format nil "~A,v"
66                      (when attic-p                                                                 f-name)))))
67                        (unless attic-made                      (in-original-dir
68                          (ensure-directories-exist rcs-name)                        (when attic-p
69                          (setf attic-made t)))                          (unless attic-made
70                      (chatter-info "hard linking ~a -> ~a~%"                            (ensure-directories-exist new-rcs)
71                                    canon-name                            (setf attic-made t)))
72                                    rcs-name)                        (chatter-info "hard linking ~a -> ~a~%" orig-rcs new-rcs)
73                      (link canon-name rcs-name)                        (link orig-rcs new-rcs))
74                      (push (make-mapping-entry :kind :file                      (push (make-mapping-entry :kind :file
75                                                :id (path-cat *mcvs-dir* f-name)                                                :id (path-cat *mcvs-dir* f-name)
76                                                :path no-attic-suffix-name                                                :path no-attic-suffix-name
# Line 135  Options: Line 134  Options:
134  Semantics:  Semantics:
135    
136    The convert command builds a Meta-CVS module directly out of the RCS files of    The convert command builds a Meta-CVS module directly out of the RCS files of
137    a CVS module.  It must be run in the root directory of a CVS repository.    a CVS module.  The source-cvs-module is the pathname to an existing
138    It requires the chmod and rcs command line tools.    module directory in the CVS repository containing an ordinary CVS module.
139      The target-mcvs-module is the pathname of a new Meta-CVS module directory to
140      be created.
141    
142      The source and target paths have to be on the same filesystem volume.
143    
144      The chmod and rcs programs are required.
145    
146      The algorithm is extremely naive:
147    
148      - A list of the pathnames of the RCS files is collected, as the basis for
149      creating the MAP file. The Attic directory components are removed from these
150      paths, and the ,v suffixes are stripped.
151    
152    The algorithm is extremely naive. A list of the pathnames of the RCS files    - The execute property of files is lifted from the permission bits on
   is collected, as the basis for creating the MAP file. The Attic directory  
   components are removed from these paths, and the ,v suffixes are stripped.  
   
   The execute property of files is lifted from the permission bits on  
153    the RCS files.    the RCS files.
154    
155    The MAP,v file is created using the ``rcs ci'' command.    - The MAP,v file is created using the ``rcs ci'' command.
156    
157    The F- files are generated as hard links to the RCS files, to save space    - The F- files are generated as hard links to the RCS files, to save space
158    and avoid the overhead of copying.    and avoid the overhead of copying.
159    
160    All of the RCS files are scanned to find version and branch tags.  Quite    - All of the RCS files are scanned to find version and branch tags.  Quite
161    naively, the version tags are installed in the MAP file, all pointing to    naively, the version tags are installed in the MAP file, all pointing to
162    revision 1.1. The branch tags are installed in MAP, pointing to revisions    revision 1.1. The branch tags are installed in MAP, pointing to revisions
163    1.1.0.2, 1.1.0.4, ...  This is a lame attempt to make it possible to check    1.1.0.2, 1.1.0.4, ...  This is a lame attempt to make it possible to check

Legend:
Removed from v.1.7.2.7  
changed lines
  Added in v.1.7.2.8

  ViewVC Help
Powered by ViewVC 1.1.5