Search code examples
cvs

Easiest way to find CVS not added files and added but not committed files


I am using cvs for my project . I have already added and committed some files before . After that I have modified , added , committed . But now I am not sure if every file existing in the project was added and also if every added file was committed . So how to find the files which

  • were not at all added (but exist in the local repo )

  • added but not committed

Edit : There are many files . so cvs log ,cvs log filename would not be so easier


Solution

  • Information in this answer was gleaned from the output of:

    cvs -H update
    

    The solution is:

    cvs -nq update
    

    Files present in the local workspace not yet added appear in the output as:

    ? file
    

    The description from CVS help explains:

      file  is  in  your working directory, but does not correspond to anyâ
      thing in the source repository, and is not in the list of  files  for
      cvs  to  ignore  (see  the description of the -I option, and see node
      'cvsignore' in the CVS manual).
    

    Files added but not committed appear in the output like this:

    A file
    

    The CVS help description goes on to say:

      The file has been added to your private copy of the sources, and will
      be  added  to  the source repository when you run commit on the file.
      This is a reminder to you that the file needs to be committed.
    

    Exceptions do apply in the case of files not added yet:

    • .cvsignore files in the local workspace suppress appearance of files in the same directory that have not yet been added to cvs control.
    • The CVSROOT/cvsignore repository configuration file does the same thing but it affects the entire workspace (all directories).
    • At least on some platforms, there appear to be implicit ignores for certain binary files like those that match a glob of "*.exe".