P4Syncpublic class P4Sync extends P4Base Synchronize client space to a Perforce depot view.
The API allows additional functionality of the "p4 sync" command
(such as "p4 sync -f //...#have" or other exotic invocations).
Example Usage:
Function | Command |
Sync to head using P4USER, P4PORT and P4CLIENT settings specified |
<P4Sync P4view="//projects/foo/main/source/..."
P4User="fbloggs" P4Port="km01:1666" P4Client="fbloggsclient" /> |
Sync to head using P4USER, P4PORT and P4CLIENT settings defined in environment |
<P4Sync P4view="//projects/foo/main/source/..." /> |
Force a re-sync to head, refreshing all files |
<P4Sync force="yes" P4view="//projects/foo/main/source/..." /> |
Sync to a label | <P4Sync label="myPerforceLabel" /> |
|
Fields Summary |
---|
String | label | private String | syncCmd |
Methods Summary |
---|
public void | execute()do the work
if (P4View != null) {
syncCmd = P4View;
}
if (label != null && !label.equals("")) {
syncCmd = syncCmd + "@" + label;
}
log("Execing sync " + P4CmdOpts + " " + syncCmd, Project.MSG_VERBOSE);
execP4Command("-s sync " + P4CmdOpts + " " + syncCmd, new SimpleP4OutputHandler(this));
| public void | setForce(java.lang.String force)force a refresh of files, if this attribute is set; false by default.
if (force == null && !label.equals("")) {
throw new BuildException("P4Sync: If you want to force, set force to non-null string!");
}
P4CmdOpts = "-f";
| public void | setLabel(java.lang.String label)Label to sync client to; optional.
// CheckStyle:VisibilityModifier ON
if (label == null || label.equals("")) {
throw new BuildException("P4Sync: Labels cannot be Null or Empty");
}
this.label = label;
|
|