5.5 Case-Sensitivitycontents@cc_inter.hlp">

In general, you can work with ClearCase on either operating system with little consideration for case-sensitivity issues. In the event you encounter unexpected behavior, read this section carefully.

This section applies only to the ClearCase multiversion file system (MVFS), and thus applies only to dynamic views.

General Recommendations

To avoid common problems, follow these general recommendations:

The remainder of this section explains the pertinent case-sensitivity issues on both UNIX and Windows and discusses each recommendation in more detail.

Case Considerations on UNIXcontents@cc_inter.hlp">

On UNIX, the native file system and all ClearCase components (MVFS, cleartool, and so on) are case-sensitive. The MVFS uses case-sensitive file lookup and performs no automatic case conversion of any kind.

Case Considerations on Windowscontents@cc_inter.hlp">

Regardless of how you configure ClearCase, all ClearCase applications that refer to pathnames in VOBs, including cleartool and clearmake, are case-sensitive on both UNIX and Windows.

The remainder of this section discusses issues of case-sensitivity for dynamic views on Windows. Snapshot views use native Windows file systems (FAT, NTFS, and so on) to read and write files. These file systems perform case-insensitive file lookup and generally preserve case when writing files. We recommend that when using snapshot views, you avoid using VOB elements whose names differ only in capitalization.

Because native Windows file systems perform case-insensitive file lookup, the MVFS is configure by default to perform case-insensitive file lookup on Windows.

By default, native Windows file systems preserve case on file-creation operations. The default MVFS behavior is to convert file names to lowercase.

On Windows, the MVFS options for file name case (on the MVFS tab in the ClearCase Control Panel program) are as follows:

NOTE: If you change any MVFS options, the new settings do not take effect until you restart your computer.

In the default mode (Case Insensitive MVFS enabled, Case Preserving disabled), the MVFS converts to lowercase the names of view-private files it creates using non-ClearCase commands, tools, and utilities (for example, .obj files and editor backup files). This behavior can combine with cleartool case-sensitivity to produce results such as the following:

cl -c util.c

(Compiler creates util.OBJ)

dir

...

02/24/95 12:52p 12,765 util.obj

(The MVFS uses lowercase for util.OBJ)

...

cleartool checkin util.OBJ

(cleartool is case-sensitive; checkin fails)

cleartool checkin util.obj

(Correct; checkin succeeds)


Keep this example in mind when coding complex sequences of file-processing commands in makefiles. Make sure that any cleartool commands that are run from a makefile and that operate on derived objects use names in the correct case.

If you clear Case-Insensitive MVFS and select Case-Preserving, the results are as follows:

cl -c util.c

(Compiler creates util.OBJ)

dir

...

02/24/95 12:52p 12,765 util.OBJ

(The MVFS preserves uppercase for util.OBJ)

...

cleartool checkin util.obj

(cleartool is case-sensitive; checkin fails)

cleartool checkin util.OBJ

(cleartool is case-sensitive; checkin succeeds)


When to Use Case-Sensitive Mode

In general, we recommend that you use case-insensitive mode whenever possible. Use case-sensitive mode only if VOB files have names that differ only in capitalization. In this mode, many Windows applications may fail when they try to access files using incorrectly capitalized names. We recommend that for files you plan to access from Windows computers, you not rely on names that differ only in capitalization. A case-insensitive MVFS on Windows cannot distinguish between the two files. Under these circumstances, the results of any file access are undefined.

NFS Client Products and Case-Sensitivitycontents@cc_inter.hlp">

NFS client software for Windows computers affects the behavior that ClearCase users see. Most NFS client products can convert to lowercase the file names they create, and some do so by default. To avoid file access problems caused by case-conversion conflicts, we strongly recommend that you disable automatic case conversion for NFS client products.

Be aware that if you disable case conversion and create UNIX files without MVFS intervention (that is, you create files outside any VOB namespace), you may end up with UNIX files with names like UTIL.OBJ, because some PC tools generate uppercase names. This does not happen for a view-private object that you create in a VOB's namespace if the Case Preserving option is disabled (the default setting). In this case, the MVFS converts the name to lowercase when it creates the file.

.