

The filespec refers to the collection of files that made up the //depot/projectA directory as of November 21, 2004. You can refer to directories by date as well. In Chapter 4 you’ll see how view mapping comes into play to relate branches to one another.įilespecs can also refer to dates and labels, prefixed with For example, is the revision of index.html as of November 21, 2004. Client workspace views, for example, map depot files to workspace files, as you’ll see in Chapter 2. Views are also used to map files to each other. In other words, you will see the history of the set of files defined by this view: The net effect is that you will see the history of the files in the intersection of the two views. If, for instance, the access permission view is: The second is a view you don’t see: the set of depot files you have permission to access.

The first is the filespec you see on the command line. In the //depot path: p4 changes //depot/./*.htmlĬhange 1386 on 0. For example, consider the P4 command that shows the history of changes to HTML files Some views, however, like those that define access permissions, are not. Some of the views involved-filespec views, or workspace views, for example-are evident to users. The scope of every Perforce operation is constrained by the views that affect it. The Perforce database stores views for a variety of uses, including access permissions, labels, branching, triggers, and change reviews. might represent the following files:Ī filespec is a special case of the Perforce construct called a view. Depending on what’s in the directory, the filespec projectA/. refers to the files in the projectA directory. A filespec that ends in /., in other words, is a succinct reference to the complete collection of files in a directory hierarchy. The "." wildcard (pronounced “dot-dot-dot”) matches filename characters at or below a directory level. Depending on what files are actually present, a filespec like projectA/d*/*.html, for example, can define a collection of files like: For example, the "*" wildcard matches characters in filenames at a directory level. , they define entire collections of files instead of single files.
