p4 files

Synopsis

Provide information about files in the depot without accessing their contents.

Syntax

p4 [g-opts] files [-a -A -e] [-i][-m max] file[revRange]...
p4 [g-opts] files -U unloadfile...

Note

The output is different for files in depots of type graph. See the final example in the section Examples.

Description

This command lists each file that matches the file patterns provided as arguments. If a revision specifier is given, the files are described at the given revision. One file is listed per line, and the format of each line is:

depot-file-location#rev - action change changelist (filetype)

where:

  • depot-file-location is the file’s location relative to the top of the depot,
  • rev is the revision number of the head revision of that file,
  • action is the action taken at the head revision: add, edit, delete, branch, move/add, move/delete, integrate, import, purge, or archive,
  • changelist is the number of the changelist in which the revision was submitted, and
  • filetype is the Perforce file type of this file at the head revision.

Unlike most Perforce commands, p4 files reports on any file in the depot; it is not limited to only those files that are visible through the client view. If a file pattern on the command line is given in client syntax, only files in the client workspace are shown.

Options

-a

For each file, list all revisions within a specified revision range, rather than only the highest revision in the range.

-A

Limit output to files in archive depots.

-e

Exclude deleted, purged, or archived files; the files that remain are those available for syncing or integration.

-i

Ignore the case of the file argument when listing files in a case sensitive server.

-m max

Limit output to the first max files.

-U unloadfile

List only files in the unload depot. See p4 unload for details.

g-opts

See “Global Options”.

Usage Notes

Can File Arguments Use Revision Specifier? Can File Arguments Use Revision Range? Minimal Access Level Required

Yes

Yes

list

  • The specified revision can be a revision range; in this case, only those files with revisions within the specified range are listed, and by default, only the highest revision in that range is listed. (To display information for all files within a revision range, use p4 files -a.)
  • Because the output of p4 files can be quite large when called with highly non-restrictive file arguments (for example, p4 files //depot/... prints information about all the files in the depot), it may be subject to a maxresults limitation as set in p4 group.

Examples

p4 files //depot/...

Provides information about all files in the depot.

p4 files //clientname/...

Provides information about all depot files visible through the client view.

p4 files @2011/03/10

Provides information about all depot file revisions that existed on March 10, 2011.

p4 files @2011/03/31:08:00,@2011/03/31:17:00

Lists all files and revisions changed during business hours on March 31, 2011.

p4 files //depot/proj2/...@p2lab

Lists files and revisions under the directory //depot/proj2/... tagged by label p2lab.

p4 files //depot/file.c

Show information on the head revision of //depot/file.c. (that is, the highest revision in the implied range of #1,#head)

p4 files -a //depot/file.c

Show information on every revision of //depot/file.c (that is, all revisions in the implied range of #1,#head)

p4 files -A //arch/depot/proj/...

If an administrator has used p4 archive to transfer //depot/proj/... to an archive depot named arch, displays information about the files in the archived project.

p4 files //bruno_1666/...

The depot for projectA is not of type graph, so we see metadata, such as "add change 6 (text)". The depot for projectB is of type graph, so we see only the file name:

//depot/projectA/README.md#1 - add change 6 (text)
//depot/projectA/src/feature.cc#1 - add change 6 (text)
//depot/projectA/src/main.cc#1 - add change 6 (text)
//repo/projectB/Hero/IgnoreSubviewModPreprocessor.swift
//repo/projectB/Hero/MatchPreprocessor.swift
//repo/projectB/README.md

Related Commands

To list the revision history of files

p4 filelog

To see a list of all currently opened files

p4 opened

To see a list of the file revisions you’ve synced to

p4 have

To view the contents of depot files

p4 print