Helix Core is now P4. Product user interfaces will be updated soon. Learn more >>

P4 CLI Documentation | 2025.2

# Map different depot locations to the same workspace location

Overlay mappings enable you to map files from more than one depot directory to the same place in a workspace.

Overlay mappings are:

- Useful for applying sparse patches in build environments.

- Fundamental to Sparse streams.

To overlay the contents of a second depot path on top of a prior depot path mapped to the same workspace directory, use a plus sign (`+`) in front of the mapping.

Example: Overlaying multiple directories in the same workspace

Maria wants to combine the files from her projects when they are synced to her workspace, so she constructs this view:

    View:
        //Acme/proj1/...    //maria/project/...
        +//Acme/proj2/...   //maria/project/...

The overlay `+` mapping `//Acme/proj2/...` maps to `//maria/project`, and overlays the first mapping, which is `//Acme/proj1/...`.

When multiple directories are overlaid in this way, only the last directory is writable. In this example, the files in `//Acme/proj2/` are writeable and the files in `//Acme/proj1/` are read-only.

Overlay mappings avoid conflicts because the files in the overlay take precedence:

- If only `//Acme/proj1/ReadMe.txt` exists, `//Acme/proj1/ReadMe.txt` is mapped to the workspace.

- If only `//Acme/proj2/ReadMe.txt` exists, `//Acme/proj2/ReadMe.txt` is mapped to the workspace.

- If both `//Acme/proj1/ReadMe.txt` and `//Acme/proj2/ReadMe.txt` exist (not obliterated), even if one or both are deleted, `//Acme/proj2/ReadMe.txt` is mapped to the workspace.
  The files in the overlay take precedence and this applies even in the following cases:

  - `//Acme/proj2/ReadMe.txt` is deleted and `//Acme/proj1/ReadMe.txt` is not deleted

  - `//Acme/proj1/ReadMe.txt` is deleted and `//Acme/proj2/ReadMe.txt` is not deleted

Your search for returned results