Jump to content

DVCS and multiple depots

dvcs helix

  • Please log in to reply
3 replies to this topic

#1 rickyt



  • Members
  • Pip
  • 3 posts

Posted 07 May 2015 - 03:07 PM


I've started looking at the new DVCS workflow in 2015.1 - I quite like it but I've noticed what appears to be an issue with using multiple depots in the same workspace.

If I try and map multiple depots in the DepotMap, I can't fetch from anything other than the depot containing //stream/main. Trying to fetch from anything else results in "//stream/branch/... - must refer to client 'rickyt-dvcs-1430220210'.". Using a separate remote for the other depot results in integration history not being preserved where it crosses over to the other depot (though this makes sense, since the first depot is not mapped in the DepotMap).

As it stands, there's no way for me to keep the integration history our files have over multiple depots - is there a workaround for this?


#2 rickyt



  • Members
  • Pip
  • 3 posts

Posted 07 May 2015 - 03:26 PM

Slight update: this seems to only affect the filter passed to fetch (stream or file path), removing all the bits I don't want to fetch from the DepotMap and then running `p4 -I fetch` works as expected (and preserves integration history between depots).

This is kind of unfortunate since it means for some directories with binary files in, I have to alter the remote mapping twice (once so I can fetch -m 1, and once for the files I want full history on).

#3 P4Shimada


    Advanced Member

  • Members
  • PipPipPip
  • 831 posts

Posted 24 June 2015 - 11:19 PM

Hi Ricky,

Can you please send an exact example of the filter that you have setup? Are you using virtual streams as a filter? Please send the stream spec output (p4 stream -o //streamdepot/name) and the exact command or steps you did that did not yield your desired results?

Thanks in advance for the needed output to trouble-shoot.

#4 rickyt



  • Members
  • Pip
  • 3 posts

Posted 25 June 2015 - 09:31 AM

Hi P4Shimada - thanks for looking into it!

I've set up a minimal reproduction of the issue - the command that isn't working as expected is
p4 -I fetch //stream/test_branch/...
p4 -I fetch -S //stream/test_branch

The error is:
Rickys-iMac:match3 ricky$ p4 fetch -S //stream/main
//stream/main/... - must refer to client 'rickyt-dvcs-1435221815'.

The remote mapping looks like:
RemoteID: origin

Address: perforce:1666

Owner: rickyt

Options: unlocked nocompress

Update: 2015/06/25 09:45:09

Access: 2015/06/25 09:59:26

Created by rickyt.

LastFetch: 333569

LastPush: default

//stream/main/Code/Modules/MyLib/... //MyProjectA/dev/Code/Modules/MyLib/...
//stream/test_branch/Code/Modules/MyLib/... //MyProjectB/MAIN/Code/Modules/MyLib/...

(The stream mapping is just the default DVCS generated one.)

Also tagged with one or more of these keywords: dvcs, helix

0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users