Previous Table of Contents Index Next
Perforce 2012.1: Command Reference



p4 submit
Synopsis
Send changes made to open files to the depot.
Syntax
p4 [g-opts] submit [-r] [-s] [-f submitoption]
p4 [g-opts] submit [-r] [-s] [-f submitoption] files
p4 [g-opts] submit [-r] [-f submitoption] -d description
p4 [g-opts] submit [-r] [-f submitoption] -d description file
p4 [g-opts] submit [-r] [-f submitoption] -c changelist#
p4 [g-opts] submit -i [-r] [-s] [-f submitoption]
Description
When a file has been opened by p4 add, p4 edit, p4 delete, or p4 integrate, the file is listed in a changelist. The user's changes to the file are made only within in the client workspace copy until the changelist is sent to the depot with p4 submit.
By default, files are opened within the default changelist, but new numbered changelists can be created with p4 change. To submit the default changelist, use p4 submit; to submit a numbered changelist, use p4 submit -c changelist#.
By default, all files in the changelist are submitted to the depot, and files open for edit, add, and branch are closed when submitted, whether there are any changes to the files or not. To change this default behavior, set the SubmitOptions: field in the p4 client form for your workspace. To override your workspace's SubmitOptions: setting from the command line, use p4 submit -f submitoption.
When used with the default changelist, p4 submit brings up a form for editing in the editor defined by the EDITOR (or P4EDITOR) environment variable. Files can be deleted from the changelist by deleting them from the form, but these files will remain open in the next default changelist. To close a file and remove it from all changelists, use p4 revert.
All changelists have a Status: field; the value of this field is pending or submitted. Submitted changelists have been successfully submitted with p4 submit; pending changelists have been created by the user but not yet been submitted successfully.
p4 submit works atomically: either all the files listed in the changelist are saved in the depot, or none of them are. p4 submit fails if it is interrupted, or if any of the files in the changelist are not found in the current client workspace, are locked in another client workspace, or require resolution and remain unresolved.
If p4 submit fails while processing the default changelist, the changelist is assigned the next number in the changelist sequence, and the default changelist is emptied. The changelist that failed submission must be resubmitted by number after the problems are fixed.
To supply a changelist description from the command line, use the -d flag. No change description dialog is presented. The -d flag works only with the default changelist, not with numbered changelists.
Form Fields
The change number, or new if submitting the default changelist.
One of pending, submitted, or new. Not editable by the user.
The status is new when the changelist is created; pending when it has been created but has not yet been submitted to the depot with p4 submit, and submitted when its contents have been stored in the depot with p4 submit .
A list of jobs that are fixed by this changelist. This field does not appear if there are no relevant jobs.
Any job that meets the jobview criteria as specified on the p4 user form are listed here by default, but can be deleted from this list.
Type of change: restricted or public.
A restricted shelved or committed changelist denies access to users who do not own the changelist and who do not have list permission to at least one file in the changelist. A restricted pending (unshelved) changelist denies access to non-owners of the changelist. Public changes are displayed without these restrictions.
A list of files being submitted in this changelist. Files can be deleted from this list, but cannot be changed or added.
Options
-c changelist#
Changelists are assigned numbers either manually by the user with p4 change, or automatically by Perforce when submission of the default changelist fails.
-d description
Immediately submit the default changelist with the description supplied on the command line, and bypass the interactive form. This option is useful when scripting, but does not allow for jobs to be added, nor for the default changelist to be modified.
-f submitoption
Override the SubmitOptions: setting in the p4 client form. Valid submitoption values are:
All open files (with or without changes) are submitted to the depot. This is the default behavior of Perforce.
All open files (with or without changes) are submitted to the depot, and all files are automatically reopened in the default changelist.
Only those files with content or type changes are submitted to the depot and reopened in the default changelist. Unchanged files are reverted and not reopened in the default changelist.
Only those files with content or type changes are submitted to the depot. Any unchanged files are moved to the default changelist.
Only those files with content or type changes are submitted to the depot. Unchanged files are moved to the default changelist, and changed files are reopened in the default changelist. This option is similar to submitunchanged+reopen, except that no unchanged files are submitted to the depot.
Read a changelist specification from standard input. Input must be in the same format at that used by the p4 submit form.
Reopen files for edit in the default changelist after submission. Files opened for add or edit in will remain open after the submit has completed.
Allows jobs to be assigned arbitrary status values on submission of the changelist, rather than the default status of closed. To leave a job unchanged, use the special status of same.
On new changelists, the fix status is displayed as the special status ignore. (If the status is left unchanged, the job is not fixed by the submission of the changelist.)
This option works in conjunction with the -s option to p4 fix, and is intended for use in conjunction with defect tracking systems.
Usage Notes
Can File Arguments Use
Revision Specifier?
Can File Arguments Use
Revision Range?
The atomic nature of p4 submit allows files to be grouped in changelists according to their purpose. For example, a single changelist might contain changes to three files that fix a single bug.
When used with a numbered changelist, p4 submit does not display a form. To change the description information for a numbered changelist, use p4 change -c changelist#.
A single file pattern can be specified as a parameter to a p4 submit of the default changelist. This file pattern limits which files in the default changelist are included in the submission; files that don't match the file pattern are moved to the next default changelist.
The file pattern parameter to p4 submit can only be used when submitting the default changelist.
Examples
Submit the default changelist. The user's revisions of the files in this changelist are stored in the depot.
Submit only those files in the default changelist that have a suffix of .txt. Move all the other files in the default changelist to the next default changelist.
Submit only those files in the default changelist that have a suffix of .h, with a description of header files. No changelist form is displayed. Move all the other files in the default changelist to the next default changelist.
Related Commands
 


Previous Table of Contents Index Next

Perforce 2012.1: Command Reference
Copyright 1999-2012 Perforce Software.