ViewVC logotype

Diff of /meta-cvs/F-255EFD9E99EDDE6614CF2CD912CA4E5C

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

revision 1.26 by kaz, Mon Oct 7 02:33:20 2002 UTC revision by kaz, Mon Nov 4 02:07:35 2002 UTC
# Line 105  Line 105 
105    (values)))    (values)))
107  (defun mcvs-move-wrapper (cvs-options cvs-command-options mcvs-args)  (defun mcvs-move-wrapper (cvs-options cvs-command-options mcvs-args)
108    (when (or cvs-options cvs-command-options)    (declare (ignore cvs-options cvs-command-options))
       #.(concatenate 'string  
           "mcvs-move: CVS options specified, "  
           "but this operation does not invoke CVS.")))  
109    (mcvs-move mcvs-args))    (mcvs-move mcvs-args))
111    (defconstant *move-help*
112    "Syntax:
114      mcvs move objects ... destination
116    Options:
118      none
120    Semantics:
122      The move command changes the names of versioned objects, resulting in a local
123      edit of the map. Like any other local change, a move is not published to the
124      repository until it is committed.
126      A move which affects the last component of a path is known as a rename; the
127      object appears to stay in the same directory, but its name changes. A move
128      affecting one or more of the other components appears to be a relocation.
129      Both of these are the same thing to the software.
131      The move command relocates only those files which are versioned in Meta-CVS;
132      it does not act upon local files. However, files can be moved into local
133      directories. Files can also be moved such that they clobber local files.
135      The behavior of the command very convenient, obeying the following rules:
137      - If the destination is an existing directory in the sandbox,
138        then the pathnames of the objects are renamed such that the objects are
139        relocated into that directory. If any of the source objects
140        are directories, then they are moved.
142      - If the destination is an existing file, then there must be exactly one
143        source argument; two or more objects cannot be moved to a non-directory
144        object. If that object is a local file, then the move produces an error,
145        which can be interactively resolved in favor of clobbering the file.
146        If the object is a Meta-CVS versioned file, then it is silently removed
147        as if by the remove command (which means that it is not lost, merely
148        unlinked from the map).
150      - If the destination does not exist, then it is deemed to be a directory
151        name if there are two or more source arguments, or to be a non-directory
152        name if there is one source argument. In the first case, the directory
153        is automatically created; there is no need for mkdir as with the Unix
154        mv command, so this is a nice convenience.
156      - If a move causes any directory to become empty, meaning that it contains
157        no local files, or Meta-CVS versioned files, that directory is removed.
158        This rule is applied recursively all the way up to the sandbox root: if
159        removing a directory causes its parent to become empty, that parent is
160        removed and so forth. Remember, empty directories have no representation
161        in Meta-CVS, and this is another way in which this turns out to be
162        a convenience. Directories that are not empty are not removed, even
163        if they contain only local files not known to the version control system.
165      - A directory can be moved into itself or to a subdirectory of itself.
166        The reader is invited to experiment to see how this works. The Unix
167        mv command disallows this, as does the underlying rename() system
168        call, so this is a third convenience.
170      - The root directory of a full or partial sandbox cannot be a source
171        argument.")

Removed from v.1.26  
changed lines
  Added in v.

  ViewVC Help
Powered by ViewVC 1.1.5