diff options
-rw-r--r-- | manifest_xml.py | 9 | ||||
-rw-r--r-- | project.py | 7 |
2 files changed, 13 insertions, 3 deletions
diff --git a/manifest_xml.py b/manifest_xml.py index 9189eec4..44538690 100644 --- a/manifest_xml.py +++ b/manifest_xml.py | |||
@@ -498,6 +498,12 @@ class XmlManifest(object): | |||
498 | "project %s path cannot be absolute in %s" % \ | 498 | "project %s path cannot be absolute in %s" % \ |
499 | (name, self.manifestFile) | 499 | (name, self.manifestFile) |
500 | 500 | ||
501 | rebase = node.getAttribute('rebase') | ||
502 | if not rebase: | ||
503 | rebase = True | ||
504 | else: | ||
505 | rebase = rebase.lower() in ("yes", "true", "1") | ||
506 | |||
501 | if self.IsMirror: | 507 | if self.IsMirror: |
502 | relpath = None | 508 | relpath = None |
503 | worktree = None | 509 | worktree = None |
@@ -513,7 +519,8 @@ class XmlManifest(object): | |||
513 | worktree = worktree, | 519 | worktree = worktree, |
514 | relpath = path, | 520 | relpath = path, |
515 | revisionExpr = revisionExpr, | 521 | revisionExpr = revisionExpr, |
516 | revisionId = None) | 522 | revisionId = None, |
523 | rebase = rebase) | ||
517 | 524 | ||
518 | for n in node.childNodes: | 525 | for n in node.childNodes: |
519 | if n.nodeName == 'copyfile': | 526 | if n.nodeName == 'copyfile': |
@@ -503,7 +503,8 @@ class Project(object): | |||
503 | worktree, | 503 | worktree, |
504 | relpath, | 504 | relpath, |
505 | revisionExpr, | 505 | revisionExpr, |
506 | revisionId): | 506 | revisionId, |
507 | rebase = True): | ||
507 | self.manifest = manifest | 508 | self.manifest = manifest |
508 | self.name = name | 509 | self.name = name |
509 | self.remote = remote | 510 | self.remote = remote |
@@ -522,6 +523,8 @@ class Project(object): | |||
522 | else: | 523 | else: |
523 | self.revisionId = revisionId | 524 | self.revisionId = revisionId |
524 | 525 | ||
526 | self.rebase = rebase | ||
527 | |||
525 | self.snapshots = {} | 528 | self.snapshots = {} |
526 | self.copyfiles = [] | 529 | self.copyfiles = [] |
527 | self.config = GitConfig.ForRepository( | 530 | self.config = GitConfig.ForRepository( |
@@ -1096,7 +1099,7 @@ class Project(object): | |||
1096 | branch.merge = self.revisionExpr | 1099 | branch.merge = self.revisionExpr |
1097 | branch.Save() | 1100 | branch.Save() |
1098 | 1101 | ||
1099 | if cnt_mine > 0: | 1102 | if cnt_mine > 0 and self.rebase: |
1100 | def _dorebase(): | 1103 | def _dorebase(): |
1101 | self._Rebase(upstream = '%s^1' % last_mine, onto = revid) | 1104 | self._Rebase(upstream = '%s^1' % last_mine, onto = revid) |
1102 | self._CopyFiles() | 1105 | self._CopyFiles() |