+ if self.syncWithOrigin and gitBranchExists("origin") and gitBranchExists("refs/remotes/p4/master"):
+ print "Syncing with origin first as requested by calling git fetch origin"
+ system("git fetch origin")
+ [originPreviousDepotPath, originP4Change] = extractDepotPathAndChangeFromGitLog(extractLogMessageFromGitCommit("origin"))
+ [p4PreviousDepotPath, p4Change] = extractDepotPathAndChangeFromGitLog(extractLogMessageFromGitCommit("p4"))
+ if len(originPreviousDepotPath) > 0 and len(originP4Change) > 0 and len(p4Change) > 0:
+ if originPreviousDepotPath == p4PreviousDepotPath:
+ originP4Change = int(originP4Change)
+ p4Change = int(p4Change)
+ if originP4Change > p4Change:
+ print "origin (%s) is newer than p4 (%s). Updating p4 branch from origin." % (originP4Change, p4Change)
+ system("git update-ref refs/remotes/p4/master origin");
+ else:
+ print "Cannot sync with origin. It was imported from %s while remotes/p4 was imported from %s" % (originPreviousDepotPath, p4PreviousDepotPath)
+