Browse Source

Cleanup/speed up the branch<> file split and removed change range limitation that I added

for debugging (oops).

Signed-off-by: Simon Hausmann <shausman@trolltech.com>
maint
Simon Hausmann 18 years ago
parent
commit
d5904674d1
  1. 26
      contrib/fast-import/git-p4

26
contrib/fast-import/git-p4

@ -461,15 +461,17 @@ class P4Sync(Command): @@ -461,15 +461,17 @@ class P4Sync(Command):
fnum = fnum + 1
return files

def branchesForCommit(self, files):
branches = Set()
def splitFilesIntoBranches(self, files):
branches = {}

for file in files:
path = file["path"][len(self.depotPath):]

for branch in self.knownBranches.keys():
if path.startswith(branch):
branches.add(branch)
if branch not in branches:
branches[branch] = []
branches[branch].append(file["path"])

return branches

@ -574,16 +576,6 @@ class P4Sync(Command): @@ -574,16 +576,6 @@ class P4Sync(Command):
if not self.silent:
print "Tag %s does not match with change %s: file count is different." % (labelDetails["label"], change)

def extractFilesInCommitToBranch(self, files, branchPrefix):
newFiles = []

for file in files:
path = file["path"]
if path.startswith(branchPrefix):
newFiles.append(file)

return newFiles

def getUserMap(self):
self.users = {}

@ -713,8 +705,7 @@ class P4Sync(Command): @@ -713,8 +705,7 @@ class P4Sync(Command):

if p4Change > 0:
self.depotPath = self.previousDepotPath
#self.changeRange = "@%s,#head" % p4Change
self.changeRange = "@%s,%s" % (p4Change, p4Change + 10)
self.changeRange = "@%s,#head" % p4Change
self.initialParent = parseRevision(self.branch)
if not self.silent:
print "Performing incremental import into %s git branch" % self.branch
@ -857,12 +848,13 @@ class P4Sync(Command): @@ -857,12 +848,13 @@ class P4Sync(Command):
try:
files = self.extractFilesFromCommit(description)
if self.detectBranches:
for branch in self.branchesForCommit(files):
branches = self.splitFilesIntoBranches(files)
for branch in branches.keys():
branchPrefix = self.depotPath + branch + "/"

parent = ""

filesForCommit = self.extractFilesInCommitToBranch(files, branch)
filesForCommit = branches[branch]

if self.verbose:
print "branch is %s" % branch

Loading…
Cancel
Save