diff options
Diffstat (limited to 'project.py')
| -rw-r--r-- | project.py | 17 |
1 files changed, 9 insertions, 8 deletions
| @@ -520,14 +520,7 @@ class Project(object): | |||
| 520 | self.name = name | 520 | self.name = name |
| 521 | self.remote = remote | 521 | self.remote = remote |
| 522 | self.UpdatePaths(relpath, worktree, gitdir, objdir) | 522 | self.UpdatePaths(relpath, worktree, gitdir, objdir) |
| 523 | self.revisionExpr = revisionExpr | 523 | self.SetRevision(revisionExpr, revisionId=revisionId) |
| 524 | |||
| 525 | if revisionId is None \ | ||
| 526 | and revisionExpr \ | ||
| 527 | and IsId(revisionExpr): | ||
| 528 | self.revisionId = revisionExpr | ||
| 529 | else: | ||
| 530 | self.revisionId = revisionId | ||
| 531 | 524 | ||
| 532 | self.rebase = rebase | 525 | self.rebase = rebase |
| 533 | self.groups = groups | 526 | self.groups = groups |
| @@ -557,6 +550,14 @@ class Project(object): | |||
| 557 | # project containing repo hooks. | 550 | # project containing repo hooks. |
| 558 | self.enabled_repo_hooks = [] | 551 | self.enabled_repo_hooks = [] |
| 559 | 552 | ||
| 553 | def SetRevision(self, revisionExpr, revisionId=None): | ||
| 554 | """Set revisionId based on revision expression and id""" | ||
| 555 | self.revisionExpr = revisionExpr | ||
| 556 | if revisionId is None and revisionExpr and IsId(revisionExpr): | ||
| 557 | self.revisionId = self.revisionExpr | ||
| 558 | else: | ||
| 559 | self.revisionId = revisionId | ||
| 560 | |||
| 560 | def UpdatePaths(self, relpath, worktree, gitdir, objdir): | 561 | def UpdatePaths(self, relpath, worktree, gitdir, objdir): |
| 561 | """Update paths used by this project""" | 562 | """Update paths used by this project""" |
| 562 | self.gitdir = gitdir.replace('\\', '/') | 563 | self.gitdir = gitdir.replace('\\', '/') |
