3 messages in com.perforce.perforce-userTo sync, or not to sync (before integ...
FromSent OnAttachments
Pete...@auspex.com24 Mar 1998 14:47 
Robe...@SCRAP.de24 Mar 1998 23:04 
Fran...@tif.ti.com25 Mar 1998 03:23 
Subject:To sync, or not to sync (before integrate)?
From:Pete...@auspex.com (Pete@auspex.com)
Date:03/24/1998 02:47:40 PM
List:com.perforce.perforce-user

Call me stubborn, many have, but it seems silly that I have to get all the files out of the depot just to nuke them with my own files I'm dropping into the branch. Is there a better way (i.e. a way that doesn't require that I populate my client with 9,900 files that I will immediately delete)?

BTW: I'm using a process not unlike that described in Tech Note 15.

Here's my problem: I have 29 trees, each about a GB in size, each about 10,000 files. I want to put them all under perforce. These "trees" are Top of Trunk RCS checkout's from various slices of the RCS history of the same roughly 10,000 files and represent releases done over the past N years. Some are branched from others, and the strategy we're adopting preserves their geneology.

I have checked the trees out and mucked with them some, so if at all possible, I'd like a solution that does not change files in my side, the originating side, of the equation.

Ideally, I'd be able to point the perforce client to each of the trees in turn and submit files onto either a branch or on top of the previous change. I began to think of this problem as one of working detached and using p4 diff mumblefoo to get the changed files in. We are using c4, which helps elide some of that functionality into fewer lines (although we're waiting on its author to fix a bug in it), but my basic time sync (pun intended) is the repeated copying and recopying of trees frequently only to be immediately removed.

Is there any way I can put changed files into the depot, onto a branch or onto the mainline, without first syncing the client to the state of the depot?

With or without a branch, this does not seem easily done, and any suggestions are welcome.

For example, presume my trees are named 01, 02, 03... I'd like to be able to: cd 01, setup a client, p4 add everything (first tree),

setup a branch, call it //depot/branch1 cd 02, setup client with view //depot/branch1/... //client/... p4 integrate -b branch1 -v p4 add all the new, p4 edit all the changed, p4 delete all the removed files (this is all done by c4 update...)

setup a branch, call it //depot/branch2 ...

You get the picture. If I do NOT sync the client, then the p4 integrate fails with the message "must sync before integrate..." (RFE: Please have a section to turn to in some documentation somewhere that explains causes and proposed solutions to these error messages.)

Now, I am stuck, so it seems, by p4 sync'ing the client at 02, THEN recopying its original contents back in, THEN p4 add... It's remarkably time consuming just to rm -rf under solaris. The cpio's take even longer. Each of these operations by itself is longer than the p4 add/submit cycle itself (hats off to you folks!).

Please tell me how to avoid the sync, and I will be a happy camper.

Muchos gracias, Peter ===================== Peter DiPrete Consultant, ITE Corp pdiprete at auspex.com Office: (408)566-2432 Cellular: (408)221-1601 Pager (numeric): (888)533-3727, PIN# 4082211601 Pager (text): 4082211601 at paging.cellone-sf.com