p4 fix

Link jobs to the changelists that fix them.


p4 [g-opts] fix [-d] [-s status] -c changelist jobName ...

Syntax conventions


The p4 fix command links jobs (descriptions of work to be done) to a changelist (a set of changes to files that does the work described by a job).

If the changelist has not yet been submitted, the job appears on the p4 submit or p4 change form for the changelist to which it’s linked, and under normal circumstances, the status of the job is changed to closed when the changelist is submitted. If the changelist has already been submitted when you run p4 fix, the job’s status is changed to a default status (typically closed) immediately.

To change a job status to something other than the default status (typically closed) when you submit a changelist, supply the -s option to p4 fix, p4 submit, or p4 change.

Because described work can be fixed over multiple changelists, one job can be linked to multiple changelists. Because a single changelist might fix ten bugs, multiple jobs can be linked to the same changelist. You can do this in one command execution by providing multiple jobs as arguments to p4 fix.


-c changelist

The changelist to mark as fixed.


Delete the fix record for the specified job at the specified changelist. The job’s status will not change.

-s status

Upon submission of the changelist, change the job’s status to status, rather than the default value closed (or some other value as defined in the Presets: of field 102 of the p4 jobspec form).

If the changelist to which you’re linking the job been submitted, the status value is immediately reflected in the job’s status.

If the changelist is pending, the job status is changed on submission of the changelist, provided that the -s option is also supplied to p4 submit and the desired status appears next to the job in the p4 submit form’s Jobs: field.

To leave a job unchanged, use the special status of same.


See Global options.

Usage Notes

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




  • Because the format of jobs can be changed from site to site, it is possible that the jobs on your system no longer have a Status: field. If so, you can still link jobs to changelists with p4 fix, but Helix Server will not change any of the job fields' values when the changelist is submitted.
  • You can change a fixed or unfixed job’s status at any time by editing the job with p4 job.
  • Another way to fix (or unfix) a job is to add it to (or delete it from) the Jobs: field of an unsubmitted changelist’s p4 submit or p4 change form.
  • You can’t p4 fix a job to the default changelist; instead, add the job to the Jobs: field of the default changelist’s p4 submit form when submitting it to the depot.
  • If you use p4 fix -s status on a job, and then use the -s option with p4 submit or p4 change, the Jobs: field of the changelist’s form will also require a status value (the default value being the one specified by p4 fix -s status). The job(s) will be assigned the specified status upon successful submission of the changelist. If no status value is specified in the form, the error message:

    Wrong number of words for field 'Jobs'.

    is displayed.

    p4 fix -s status, p4 submit -s, and p4 change -s are intended for use in conjunction with defect tracking systems.

    Under normal circumstances, end users do not use these commands, and use p4 submit and p4 change without the -s option. In this case, only the job number is required in the Jobs: field, and each job’s status is set to a default value (typically closed) on completion of the submit.


p4 fix -c 201 job000141 job002034

Mark two jobs as being fixed by changelist 201.

If changelist 201 is still pending, the jobs' status is changed to closed when the changelist is submitted.

p4 fix -c 201 -s suspended job002433

Mark job002433 as suspended, rather than closed, when changelist 201 is submitted.

Requires use of the -s option with p4 submit.

Related Commands

To add or delete a job from a pending changelist

p4 change

To add or delete a job from the default changelist

p4 submit

To view a list of connections between jobs and changelists

p4 fixes

To create or edit a job

p4 job

To list all jobs, or a subset of jobs

p4 jobs

To change the format of jobs at your site (superuser only)

p4 jobspec

To read information about the format of jobs at your site

p4 jobspec -o