cvsadditiongit-cvs

Can't add a file named "VERSION" to CVS at the same level of a dir named "version"


I'm reporting a series of commits from git to cvs with cvsexportcommit. I've found that it's impossible to add the VERSION file in the following context

|
\_version/
| |
| \_version.txt (to be removed)
|
\_VERSION (to be added)

The output I get is the following:

Applying to CVS commit f6ce403e6e1d57b61661527969ac97c52bcbe41f from parent 076d1fb72d8498670582561b7318939bf209c1f4
Checking if patch will apply
cvs status: Examining prometeo/VERSION
Applying
fatal: unable to write file prometeo/VERSION mode 100644
Patch applied successfully. Adding new files and directories to CVS
cvs [add aborted]: there is a version in prometeo/VERSION already
Failed to cvs add prometeo/VERSION -- you may need to do it manually at /usr/local/git/libexec/git-core/git-cvsexportcommit line 314.
cvs remove: scheduling `prometeo/version/version.txt' for removal
cvs remove: use 'cvs commit' to remove this file permanently
Commit to CVS
Patch title (first comment line): Moved tmtc-prometeo version number to prometeo/VERSION
NOTE: One or more hunks failed to apply cleanly.
You'll need to apply the patch in .cvsexportcommit.diff manually
using a patch program. After applying the patch and resolving the
problems you may commit using:
    cd "/Users/elia/Code/linux-tmtc/"
    cvs -d :ext:eschito@********:/cvshome/ground commit -F .msg 'prometeo/VERSION' 'prometeo/tool/bin/tmtc_info' 'prometeo/version/version.txt'

If I try to add manually the "VERSION" file to cvs I get:

> cvs add prometeo/VERSION
cvs [add aborted]: there is a version in prometeo/VERSION already

Any ideas?


Solution

  • What platform is your CVS server running on? AFAIK, some versions of CVS (at least on Windows NT) have case-insensitive filename handling in some places, hence will not accept two files whose names only differ by case.

    At any rate, I would very strongly advise against using filenames that differ only in case. It can be a nightmare if you ever want to check out onto a filesystem that's not fully case-insensitive (some versions of MS Windows, some versions of MacOS...), and it's also confusing ("you need to edit the file foo in blah, no not that foo, the one with a capital F" ...).

    So:

    1. Don't do it
    2. If you feel you have to, host on Linux :-)