CBD-31

tom_tyler (C. Thomas Tyler)
C. Thomas Tyler created this job , modified by super-tom_tyler
Open
Change default sync rev for '...' on a back-in-type sync.

Change the default revision used for a 'p4 sync' when a
back-in-time sync is done, i.e. a sync with a revision
specifier, thus selecting an older version of the
*.cbdsst file (which represents the state of the versioned
stream spec at the old revision).

Currently, when a back-in-time sync is done, the sync
uses the correct specified revisions when they are
specified explicitly in the older version of the *.cbdsst
file, e.g. a Paths: field containing:

import foo/... //foo/main/...@275

However, if no revision is explicilty specified, e.g.:

import foo/... //foo/main/...

the current behvaior is simply to pass the '...' along to
the server, resulting in the head revisions being
selected for a sync to files in //foo/main/...

With this job, the desired new behvaior is to make it
so the implicit default, when no revision is specified,
becomes the point specified changelist number.

So, if a user does:
p4 sync @500

and that results in syncing a //ace/main/ace.cbdsst@500,
and in that revision there is a Paths: field containing:

import foo/... //foo/main/...

then desired behavior is to translate that sync to the
equivalent of:

p4 sync //foo/main/...@500

== OPTIONAL ==

For visual optimization, the @500 could be replaced with
the latest changelist up to @500 that actually affected
files in the path //foo/main..., and so it might
actually get translated to something like:

p4 sync //foo/main/...@275

assuming @275 is the latest changelist up to @500 that
affected files in //foo/main/...

In all cases, 'p4 sync' behavior also applies to 'flush'
and 'update' commands (which is current behavior).
  • Details
  • Comments -
Status
Open
Project
perforce-software-cbd
Severity
B
Reported By
C. Thomas Tyler
Reported Date
Modified By
super-tom_tyler
Modified Date
Owned By
ttyler
Type
Feature