Re: Asking again... [Re: how to properly import perforce history?]
From: Alex Riesen <hidden>
Date: 2016-06-15 22:43:15
Simon Hausmann, Mon, Jun 11, 2007 20:42:12 +0200:
On Monday 11 June 2007 17:44:04 Alex Riesen wrote:quoted
On 6/11/07, Simon Hausmann [off-list ref] wrote:quoted
*plug* You could try with git-p4 from http://repo.or.cz/w/fast-export.git . It should be just a matter of calling git-p4 clone //depot/pathCan I suggest you add a target directory mapping to your tool? Something like: git-p4 clone //depot/project/path [libs/project/path] [rev-range]I'm not sure I understand the libs/project/path part, ...
Your client contains the mappings. It defines how the pathnames on the p4 server relate to that on your computer. In the example above file from the depot path //depot/project/path can be found in the directory of the p4 client in the subdirectories libs/project/path.
Han-Wen implemented also support for importing multiple depot paths at the same time (and tracking them in one git branch).
And where does he put the depot paths? As they are in depot? How does this corelate to the setups done by genuine P4 users (the poor souls) where the mappings are not always 1-to-1 right from the root? Or you haven't got any?
The environment I'm working in is not too big and fairly liberal and reasonably disciplined.
You must be very strange environment indeed. Carefully balanced.
quoted
And, BTW, don't you have a small problem with filenames with spaces and quoting?I'm not aware of any problems. For example in our depot we have filenames with spaces in them and they appear just fine in my git import. Did you run into any specific case? It could very well be that there's a bug somewhere that I'm just not hitting myself, so I'm curious :)
No, I just looking at the source. Does python have some magic for
running programs with system() when passed a format string? Like here:
for f in filesToAdd:
system("p4 add %s" % f)
for f in filesToDelete:
system("p4 revert %s" % f)
system("p4 delete %s" % f)
BTW, sometimes you quote the names, but obviously wrong (think about
filenames containing double quotes):
system("p4 edit \"%s\"" % path)
editedFiles.add(path)