620 while not os.path.isdir(os.path.join(repodir, self.adminDir)): |
620 while not os.path.isdir(os.path.join(repodir, self.adminDir)): |
621 repodir = os.path.dirname(repodir) |
621 repodir = os.path.dirname(repodir) |
622 if os.path.splitdrive(repodir)[1] == os.sep: |
622 if os.path.splitdrive(repodir)[1] == os.sep: |
623 return # oops, project is not version controlled |
623 return # oops, project is not version controlled |
624 while os.path.normcase(dname) != os.path.normcase(repodir) and \ |
624 while os.path.normcase(dname) != os.path.normcase(repodir) and \ |
625 (os.path.normcase(dname) not in self.statusCache or \ |
625 (os.path.normcase(dname) not in self.statusCache or |
626 self.statusCache[os.path.normcase(dname)] == |
626 self.statusCache[os.path.normcase(dname)] == |
627 self.canBeAdded): |
627 self.canBeAdded): |
628 # add directories recursively, if they aren't in the |
628 # add directories recursively, if they aren't in the |
629 # repository already |
629 # repository already |
630 tree.insert(-1, dname) |
630 tree.insert(-1, dname) |
631 dname = os.path.dirname(dname) |
631 dname = os.path.dirname(dname) |
651 if os.path.splitdrive(repodir)[1] == os.sep: |
651 if os.path.splitdrive(repodir)[1] == os.sep: |
652 return # oops, project is not version controlled |
652 return # oops, project is not version controlled |
653 while os.path.normcase(d) != \ |
653 while os.path.normcase(d) != \ |
654 os.path.normcase(repodir) and \ |
654 os.path.normcase(repodir) and \ |
655 (d not in tree2 + tree) and \ |
655 (d not in tree2 + tree) and \ |
656 (os.path.normcase(d) not in self.statusCache or \ |
656 (os.path.normcase(d) not in self.statusCache or |
657 self.statusCache[os.path.normcase(d)] == \ |
657 self.statusCache[os.path.normcase(d)] == |
658 self.canBeAdded): |
658 self.canBeAdded): |
659 tree2.append(d) |
659 tree2.append(d) |
660 d = os.path.dirname(d) |
660 d = os.path.dirname(d) |
661 else: |
661 else: |
662 while not os.path.exists(os.path.join(d, self.adminDir)): |
662 while not os.path.exists(os.path.join(d, self.adminDir)): |
716 if os.path.splitdrive(repodir)[1] == os.sep: |
716 if os.path.splitdrive(repodir)[1] == os.sep: |
717 return # oops, project is not version controlled |
717 return # oops, project is not version controlled |
718 while os.path.normcase(d) != \ |
718 while os.path.normcase(d) != \ |
719 os.path.normcase(repodir) and \ |
719 os.path.normcase(repodir) and \ |
720 (d not in tree) and \ |
720 (d not in tree) and \ |
721 (os.path.normcase(d) not in self.statusCache or \ |
721 (os.path.normcase(d) not in self.statusCache or |
722 self.statusCache[os.path.normcase(d)] == \ |
722 self.statusCache[os.path.normcase(d)] == |
723 self.canBeAdded): |
723 self.canBeAdded): |
724 tree.append(d) |
724 tree.append(d) |
725 d = os.path.dirname(d) |
725 d = os.path.dirname(d) |
726 else: |
726 else: |
727 while not os.path.exists(os.path.join(d, self.adminDir)): |
727 while not os.path.exists(os.path.join(d, self.adminDir)): |
740 repodir = os.path.dirname(repodir) |
740 repodir = os.path.dirname(repodir) |
741 if os.path.splitdrive(repodir)[1] == os.sep: |
741 if os.path.splitdrive(repodir)[1] == os.sep: |
742 return # oops, project is not version controlled |
742 return # oops, project is not version controlled |
743 while os.path.normcase(dname) != \ |
743 while os.path.normcase(dname) != \ |
744 os.path.normcase(repodir) and \ |
744 os.path.normcase(repodir) and \ |
745 (os.path.normcase(dname) not in self.statusCache or \ |
745 (os.path.normcase(dname) not in self.statusCache or |
746 self.statusCache[os.path.normcase(dname)] == \ |
746 self.statusCache[os.path.normcase(dname)] == |
747 self.canBeAdded): |
747 self.canBeAdded): |
748 # add directories recursively, if they aren't in the |
748 # add directories recursively, if they aren't in the |
749 # repository already |
749 # repository already |
750 tree.insert(-1, dname) |
750 tree.insert(-1, dname) |
751 dname = os.path.dirname(dname) |
751 dname = os.path.dirname(dname) |
1528 Public method to retrieve information about the repository. |
1528 Public method to retrieve information about the repository. |
1529 |
1529 |
1530 @param ppath local path to get the repository infos (string) |
1530 @param ppath local path to get the repository infos (string) |
1531 @return string with ready formated info for display (string) |
1531 @return string with ready formated info for display (string) |
1532 """ |
1532 """ |
1533 info = {\ |
1533 info = { |
1534 'committed-rev': '', |
1534 'committed-rev': '', |
1535 'committed-date': '', |
1535 'committed-date': '', |
1536 'committed-time': '', |
1536 'committed-time': '', |
1537 'url': '', |
1537 'url': '', |
1538 'last-author': '', |
1538 'last-author': '', |