p4 filelog
Synopsis
Print detailed information about files' revisions.
Syntax
p4 [g-opts
] filelog
[-c change
] [-h -i -l -L -t -p -s]
[-m max
]
file
[revRange
]
Description
p4 filelog describes each revision of the files provided as arguments. At least one file or file pattern must be provided as an argument. If the file specification includes a revision range, only the specified revisions are listed.
By default, the output consists of one line per revision in reverse chronological order. The format of each line is:
... #rev
changechnum
action
ondate
byuser
@client
(type
) 'description
'
where:
-
rev
is the revision number; -
chnum
is the number of the submitting changelist; -
action
is the operation the file was open for:add
,edit
,delete
,branch
,import
, orintegrate
;If the action is
import
(that is, integrate from a remote depot) orintegrate
, Perforce displays a second line description, formatted as... #
integration-action
partner-file
See p4 integrated for a full description of integration actions.
-
date
is the submission date (by default), or date and time (if the-t
option is used). -
user
is the name of the user who submitted the revision; -
client
is the name of the client workspace from which the revision was submitted; -
type
is the type of the file at the given revision; and -
description
is the first 30 characters of the corresponding changelist's description.If the
-l
option is used, thedescription
is the full changelist description as entered when the changelist was submitted. If the-L
option is used, the description is the full changelist description, truncated to 250 characters.
Options
|
Display only files submitted at the specified changelist number. |
|
Display file content history instead of file name history. The revisions that are listed include revisions of other files that were branched/copied (using p4 integrate and p4 resolve -at) to the specified revision. Revisions that were replaced by copying or branching are not displayed, even if they are in the history of the specified revision. |
|
Follow file history across branches. If a file was created by
integration (p4
integrate), Perforce describes the file's
revisions and displays the revisions of the file from which it
was branched (back to the branch point of the original file).
File history inherited by renaming
(p4 move)
is always displayed, regardless of whether or not the
|
|
List long output, with the full text of each changelist description. |
|
List long output, with the full text of each changelist description truncated at 250 characters. |
|
List only the first |
|
When used with the |
|
Display a shortened form of output by ignoring non-contributory integrations (for example, integrations involving "branch into" or copy into" operations are not displayed) |
|
Display the time as well as the date. |
|
See “Global Options”. |
Usage Notes
Can File Arguments Use Revision Specifier? |
Can File Arguments Use Revision Range? |
Minimal Access Level Required |
---|---|---|
Yes |
No |
|
-
Because p4 filelog's output can be quite large when called with highly non-restrictive file arguments (for example, p4 filelog //depot/... displays the revision history for every file in the depot), p4 filelog commands may be subject to a
maxresults
limitation as set in p4 group. -
If both the
-i
and the-m
options are used, and a branch is encountered within the most recentmaxrev
maxrev
revisions of the file, the most recentmaxrev
revisions of the file prior to the branch point are also displayed. p4 filelog -i follows branches down to a depth of 50 levels, which should be more than sufficient for any site. -
Old revisions of temporary object files (file type modifier
+S
n
) are displayed with an action ofpurge
.
Examples
p4 filelog //depot/proj1/... |
Display the revision history for every file under the depot's
|
p4 filelog file1.c@100,@120 |
Display the revision history for |
p4 filelog file1.c#have,#head |
If you do not have the latest revision of
|
p4 filelog file1.c file1.h |
Show the revision history for files |