return val
def read_pipe(c):
- sys.stderr.write('reading pipe: %s\n' % c)
+ if not silent:
+ sys.stderr.write('reading pipe: %s\n' % c)
## todo: check return status
pipe = os.popen(c, 'rb')
val = pipe.read()
def read_pipe_lines(c):
- sys.stderr.write('reading pipe: %s\n' % c)
+ if not silent:
+ sys.stderr.write('reading pipe: %s\n' % c)
## todo: check return status
pipe = os.popen(c, 'rb')
val = pipe.readlines()
return val
+def system(cmd):
+ if not silent:
+ sys.stderr.write("executing %s" % cmd)
+ if os.system(cmd) != 0:
+ die("command failed: %s" % cmd)
+
+
+
def p4CmdList(cmd):
cmd = "p4 -G %s" % cmd
pipe = os.popen(cmd, "rb")
def parseRevision(ref):
return read_pipe("git rev-parse %s" % ref)[:-1]
-def system(cmd):
- if os.system(cmd) != 0:
- die("command failed: %s" % cmd)
-
def extractLogMessageFromGitCommit(commit):
logMessage = ""
(a ... is not needed in the path p4 specification, it's added implicitly)"""
self.usage += " //depot/path[@revRange]"
-
self.silent = False
self.createdBranches = Set()
self.committedChanges = Set()
self.importIntoRemotes = True
self.maxChanges = ""
self.isWindows = (platform.system() == "Windows")
+ self.depotPath = None
if gitConfig("git-p4.syncFromOrigin") == "false":
self.syncWithOrigin = False
fnum = fnum + 1
return files
+ def stripRepoPath(self, path):
+ return path[len(self.depotPath):]
+
def splitFilesIntoBranches(self, commit):
branches = {}
-
fnum = 0
while commit.has_key("depotFile%s" % fnum):
path = commit["depotFile%s" % fnum]
file["type"] = commit["type%s" % fnum]
fnum = fnum + 1
- relPath = path[len(self.depotPath):]
+ relPath = self.stripRepoPath(path)
for branch in self.knownBranches.keys():
- if relPath.startswith(branch + "/"): # add a trailing slash so that a commit into qt/4.2foo doesn't end up in qt/4.2
+
+ # add a trailing slash so that a commit into qt/4.2foo doesn't end up in qt/4.2
+ if relPath.startswith(branch + "/"):
if branch not in branches:
branches[branch] = []
branches[branch].append(file)