692 @param name file/directory name to be tagged (string) |
692 @param name file/directory name to be tagged (string) |
693 """ |
693 """ |
694 dname, fname = self.splitPath(name) |
694 dname, fname = self.splitPath(name) |
695 |
695 |
696 # find the root of the repo |
696 # find the root of the repo |
697 repodir = str(dname) |
697 repodir = dname |
698 while not os.path.isdir(os.path.join(repodir, self.adminDir)): |
698 while not os.path.isdir(os.path.join(repodir, self.adminDir)): |
699 repodir = os.path.dirname(repodir) |
699 repodir = os.path.dirname(repodir) |
700 if repodir == os.sep: |
700 if repodir == os.sep: |
701 return |
701 return |
702 |
702 |
703 dlg = HgTagDialog(self.tagsList) |
703 dlg = HgTagDialog(self.hgGetTagsList(repodir)) |
704 if dlg.exec_() == QDialog.Accepted: |
704 if dlg.exec_() == QDialog.Accepted: |
705 tag, tagOp = dlg.getParameters() |
705 tag, tagOp = dlg.getParameters() |
706 if tag in self.tagsList: |
|
707 self.tagsList.remove(tag) |
|
708 self.tagsList.insert(0, tag) |
|
709 else: |
706 else: |
710 return |
707 return |
711 |
708 |
712 args = [] |
709 args = [] |
713 args.append('tag') |
710 args.append('tag') |
765 |
762 |
766 @param name file/directory name to be merged (string) |
763 @param name file/directory name to be merged (string) |
767 """ |
764 """ |
768 dname, fname = self.splitPath(name) |
765 dname, fname = self.splitPath(name) |
769 |
766 |
|
767 # find the root of the repo |
|
768 repodir = dname |
|
769 while not os.path.isdir(os.path.join(repodir, self.adminDir)): |
|
770 repodir = os.path.dirname(repodir) |
|
771 if repodir == os.sep: |
|
772 return |
|
773 |
770 opts = self.options['global'][:] |
774 opts = self.options['global'][:] |
771 force = '--force' in opts |
775 force = '--force' in opts |
772 if force: |
776 if force: |
773 del opts[opts.index('--force')] |
777 del opts[opts.index('--force')] |
774 |
778 |
775 dlg = HgMergeDialog(force, self.tagsList, self.branchesList) |
779 if self.isExtensionActive("bookmarks"): |
|
780 bookmarksList = \ |
|
781 self.getExtensionObject("bookmarks").hgGetBookmarksList(repodir) |
|
782 else: |
|
783 bookmarksList = None |
|
784 dlg = HgMergeDialog(force, self.hgGetTagsList(repodir), |
|
785 self.hgGetBranchesList(repodir), |
|
786 bookmarksList) |
776 if dlg.exec_() == QDialog.Accepted: |
787 if dlg.exec_() == QDialog.Accepted: |
777 rev, force = dlg.getParameters() |
788 rev, force = dlg.getParameters() |
778 else: |
789 else: |
779 return |
790 return |
780 |
|
781 # find the root of the repo |
|
782 repodir = dname |
|
783 while not os.path.isdir(os.path.join(repodir, self.adminDir)): |
|
784 repodir = os.path.dirname(repodir) |
|
785 if repodir == os.sep: |
|
786 return |
|
787 |
791 |
788 args = [] |
792 args = [] |
789 args.append('merge') |
793 args.append('merge') |
790 self.addArguments(args, opts) |
794 self.addArguments(args, opts) |
791 if force: |
795 if force: |
804 """ |
808 """ |
805 Public method used to switch a working directory to a different revision. |
809 Public method used to switch a working directory to a different revision. |
806 |
810 |
807 @param name directory name to be switched (string) |
811 @param name directory name to be switched (string) |
808 """ |
812 """ |
809 dlg = HgRevisionSelectionDialog(self.tagsList, self.branchesList) |
813 dname, fname = self.splitPath(name) |
|
814 |
|
815 # find the root of the repo |
|
816 repodir = dname |
|
817 while not os.path.isdir(os.path.join(repodir, self.adminDir)): |
|
818 repodir = os.path.dirname(repodir) |
|
819 if repodir == os.sep: |
|
820 return |
|
821 |
|
822 if self.isExtensionActive("bookmarks"): |
|
823 bookmarksList = \ |
|
824 self.getExtensionObject("bookmarks").hgGetBookmarksList(repodir) |
|
825 else: |
|
826 bookmarksList = None |
|
827 dlg = HgRevisionSelectionDialog(self.hgGetTagsList(repodir), |
|
828 self.hgGetBranchesList(repodir), |
|
829 bookmarksList) |
810 if dlg.exec_() == QDialog.Accepted: |
830 if dlg.exec_() == QDialog.Accepted: |
811 rev = dlg.getRevision() |
831 rev = dlg.getRevision() |
812 self.vcsUpdate(name, revision=rev) |
832 self.vcsUpdate(name, revision=rev) |
813 |
833 |
814 def vcsRegisteredState(self, name): |
834 def vcsRegisteredState(self, name): |
1182 project.copyDirectory(name, target) |
1202 project.copyDirectory(name, target) |
1183 else: |
1203 else: |
1184 project.appendFile(target) |
1204 project.appendFile(target) |
1185 return res |
1205 return res |
1186 |
1206 |
|
1207 def hgGetTagsList(self, repodir): |
|
1208 """ |
|
1209 Public method to get the list of tags. |
|
1210 |
|
1211 @param repodir directory name of the repository (string) |
|
1212 @return list of tags (list of string) |
|
1213 """ |
|
1214 ioEncoding = Preferences.getSystem("IOEncoding") |
|
1215 process = QProcess() |
|
1216 args = [] |
|
1217 args.append('tags') |
|
1218 args.append('--verbose') |
|
1219 process.setWorkingDirectory(repodir) |
|
1220 process.start('hg', args) |
|
1221 procStarted = process.waitForStarted() |
|
1222 if procStarted: |
|
1223 finished = process.waitForFinished(30000) |
|
1224 if finished and process.exitCode() == 0: |
|
1225 self.tagsList = [] |
|
1226 output = \ |
|
1227 str(process.readAllStandardOutput(), ioEncoding, 'replace') |
|
1228 for line in output.splitlines(): |
|
1229 l = line.strip().split() |
|
1230 if l[-1][0] in "1234567890": |
|
1231 # last element is a rev:changeset |
|
1232 del l[-1] |
|
1233 else: |
|
1234 del l[-2:] |
|
1235 name = " ".join(l) |
|
1236 if name not in ["tip", "default"]: |
|
1237 self.tagsList.append(name) |
|
1238 |
|
1239 return self.tagsList[:] |
|
1240 |
|
1241 def hgGetBranchesList(self, repodir): |
|
1242 """ |
|
1243 Public method to get the list of branches. |
|
1244 |
|
1245 @param repodir directory name of the repository (string) |
|
1246 @return list of branches (list of string) |
|
1247 """ |
|
1248 ioEncoding = Preferences.getSystem("IOEncoding") |
|
1249 process = QProcess() |
|
1250 args = [] |
|
1251 args.append('branches') |
|
1252 args.append('--closed') |
|
1253 process.setWorkingDirectory(repodir) |
|
1254 process.start('hg', args) |
|
1255 procStarted = process.waitForStarted() |
|
1256 if procStarted: |
|
1257 finished = process.waitForFinished(30000) |
|
1258 if finished and process.exitCode() == 0: |
|
1259 self.branchesList = [] |
|
1260 output = \ |
|
1261 str(process.readAllStandardOutput(), ioEncoding, 'replace') |
|
1262 for line in output.splitlines(): |
|
1263 l = line.strip().split() |
|
1264 if l[-1][0] in "1234567890": |
|
1265 # last element is a rev:changeset |
|
1266 del l[-1] |
|
1267 else: |
|
1268 del l[-2:] |
|
1269 name = " ".join(l) |
|
1270 if name not in ["tip", "default"]: |
|
1271 self.branchesList.append(name) |
|
1272 |
|
1273 return self.branchesList[:] |
|
1274 |
1187 def hgListTagBranch(self, path, tags=True): |
1275 def hgListTagBranch(self, path, tags=True): |
1188 """ |
1276 """ |
1189 Public method used to list the available tags or branches. |
1277 Public method used to list the available tags or branches. |
1190 |
1278 |
1191 @param path directory name of the project (string) |
1279 @param path directory name of the project (string) |
1235 This method gives the chance to enter the revisions to be compared. |
1323 This method gives the chance to enter the revisions to be compared. |
1236 |
1324 |
1237 @param name file/directory name to be diffed (string) |
1325 @param name file/directory name to be diffed (string) |
1238 """ |
1326 """ |
1239 if isinstance(name, list): |
1327 if isinstance(name, list): |
|
1328 dname, fnames = self.splitPathList(name) |
1240 names = name[:] |
1329 names = name[:] |
1241 else: |
1330 else: |
|
1331 dname, fname = self.splitPath(name) |
1242 names = [name] |
1332 names = [name] |
1243 for nam in names: |
1333 for nam in names: |
1244 if os.path.isfile(nam): |
1334 if os.path.isfile(nam): |
1245 editor = e5App().getObject("ViewManager").getOpenEditor(nam) |
1335 editor = e5App().getObject("ViewManager").getOpenEditor(nam) |
1246 if editor and not editor.checkDirty(): |
1336 if editor and not editor.checkDirty(): |
1247 return |
1337 return |
1248 else: |
1338 else: |
1249 project = e5App().getObject("Project") |
1339 project = e5App().getObject("Project") |
1250 if nam == project.ppath and not project.saveAllScripts(): |
1340 if nam == project.ppath and not project.saveAllScripts(): |
1251 return |
1341 return |
1252 dlg = HgRevisionsSelectionDialog(self.tagsList, self.branchesList) |
1342 |
|
1343 # find the root of the repo |
|
1344 repodir = dname |
|
1345 while not os.path.isdir(os.path.join(repodir, self.adminDir)): |
|
1346 repodir = os.path.dirname(repodir) |
|
1347 if repodir == os.sep: |
|
1348 return |
|
1349 |
|
1350 if self.isExtensionActive("bookmarks"): |
|
1351 bookmarksList = \ |
|
1352 self.getExtensionObject("bookmarks").hgGetBookmarksList(repodir) |
|
1353 else: |
|
1354 bookmarksList = None |
|
1355 dlg = HgRevisionsSelectionDialog(self.hgGetTagsList(repodir), |
|
1356 self.hgGetBranchesList(repodir), |
|
1357 bookmarksList) |
1253 if dlg.exec_() == QDialog.Accepted: |
1358 if dlg.exec_() == QDialog.Accepted: |
1254 revisions = dlg.getRevisions() |
1359 revisions = dlg.getRevisions() |
1255 self.diff = HgDiffDialog(self) |
1360 self.diff = HgDiffDialog(self) |
1256 self.diff.show() |
1361 self.diff.show() |
1257 self.diff.start(name, revisions) |
1362 self.diff.start(name, revisions) |
1493 @param name file/directory name to be branched (string) |
1598 @param name file/directory name to be branched (string) |
1494 """ |
1599 """ |
1495 dname, fname = self.splitPath(name) |
1600 dname, fname = self.splitPath(name) |
1496 |
1601 |
1497 # find the root of the repo |
1602 # find the root of the repo |
1498 repodir = str(dname) |
1603 repodir = dname |
1499 while not os.path.isdir(os.path.join(repodir, self.adminDir)): |
1604 while not os.path.isdir(os.path.join(repodir, self.adminDir)): |
1500 repodir = os.path.dirname(repodir) |
1605 repodir = os.path.dirname(repodir) |
1501 if repodir == os.sep: |
1606 if repodir == os.sep: |
1502 return |
1607 return |
1503 |
1608 |
1504 name, ok = QInputDialog.getItem( |
1609 name, ok = QInputDialog.getItem( |
1505 None, |
1610 None, |
1506 self.trUtf8("Create Branch"), |
1611 self.trUtf8("Create Branch"), |
1507 self.trUtf8("Enter branch name"), |
1612 self.trUtf8("Enter branch name"), |
1508 self.branchesList, |
1613 sorted(self.hgGetBranchesList(repodir)), |
1509 0, True) |
1614 0, True) |
1510 if ok and name: |
1615 if ok and name: |
1511 args = [] |
1616 args = [] |
1512 args.append('branch') |
1617 args.append('branch') |
1513 args.append(name.strip().replace(" ", "_")) |
1618 args.append(name.strip().replace(" ", "_")) |
1524 @param name file/directory name (string) |
1629 @param name file/directory name (string) |
1525 """ |
1630 """ |
1526 dname, fname = self.splitPath(name) |
1631 dname, fname = self.splitPath(name) |
1527 |
1632 |
1528 # find the root of the repo |
1633 # find the root of the repo |
1529 repodir = str(dname) |
1634 repodir = dname |
1530 while not os.path.isdir(os.path.join(repodir, self.adminDir)): |
1635 while not os.path.isdir(os.path.join(repodir, self.adminDir)): |
1531 repodir = os.path.dirname(repodir) |
1636 repodir = os.path.dirname(repodir) |
1532 if repodir == os.sep: |
1637 if repodir == os.sep: |
1533 return |
1638 return |
1534 |
1639 |
1547 @param name file/directory name (string) |
1652 @param name file/directory name (string) |
1548 """ |
1653 """ |
1549 dname, fname = self.splitPath(name) |
1654 dname, fname = self.splitPath(name) |
1550 |
1655 |
1551 # find the root of the repo |
1656 # find the root of the repo |
1552 repodir = str(dname) |
1657 repodir = dname |
1553 while not os.path.isdir(os.path.join(repodir, self.adminDir)): |
1658 while not os.path.isdir(os.path.join(repodir, self.adminDir)): |
1554 repodir = os.path.dirname(repodir) |
1659 repodir = os.path.dirname(repodir) |
1555 if repodir == os.sep: |
1660 if repodir == os.sep: |
1556 return |
1661 return |
1557 |
1662 |
1572 @param name file/directory name (string) |
1677 @param name file/directory name (string) |
1573 """ |
1678 """ |
1574 dname, fname = self.splitPath(name) |
1679 dname, fname = self.splitPath(name) |
1575 |
1680 |
1576 # find the root of the repo |
1681 # find the root of the repo |
1577 repodir = str(dname) |
1682 repodir = dname |
1578 while not os.path.isdir(os.path.join(repodir, self.adminDir)): |
1683 while not os.path.isdir(os.path.join(repodir, self.adminDir)): |
1579 repodir = os.path.dirname(repodir) |
1684 repodir = os.path.dirname(repodir) |
1580 if repodir == os.sep: |
1685 if repodir == os.sep: |
1581 return |
1686 return |
1582 |
1687 |
1595 @param name file/directory name (string) |
1700 @param name file/directory name (string) |
1596 """ |
1701 """ |
1597 dname, fname = self.splitPath(name) |
1702 dname, fname = self.splitPath(name) |
1598 |
1703 |
1599 # find the root of the repo |
1704 # find the root of the repo |
1600 repodir = str(dname) |
1705 repodir = dname |
1601 while not os.path.isdir(os.path.join(repodir, self.adminDir)): |
1706 while not os.path.isdir(os.path.join(repodir, self.adminDir)): |
1602 repodir = os.path.dirname(repodir) |
1707 repodir = os.path.dirname(repodir) |
1603 if repodir == os.sep: |
1708 if repodir == os.sep: |
1604 return |
1709 return |
1605 |
1710 |
1619 @param name file/directory name (string) |
1724 @param name file/directory name (string) |
1620 """ |
1725 """ |
1621 dname, fname = self.splitPath(name) |
1726 dname, fname = self.splitPath(name) |
1622 |
1727 |
1623 # find the root of the repo |
1728 # find the root of the repo |
1624 repodir = str(dname) |
1729 repodir = dname |
1625 while not os.path.isdir(os.path.join(repodir, self.adminDir)): |
1730 while not os.path.isdir(os.path.join(repodir, self.adminDir)): |
1626 repodir = os.path.dirname(repodir) |
1731 repodir = os.path.dirname(repodir) |
1627 if repodir == os.sep: |
1732 if repodir == os.sep: |
1628 return |
1733 return |
1629 |
1734 |
1642 @param name file/directory name (string) |
1747 @param name file/directory name (string) |
1643 """ |
1748 """ |
1644 dname, fname = self.splitPath(name) |
1749 dname, fname = self.splitPath(name) |
1645 |
1750 |
1646 # find the root of the repo |
1751 # find the root of the repo |
1647 repodir = str(dname) |
1752 repodir = dname |
1648 while not os.path.isdir(os.path.join(repodir, self.adminDir)): |
1753 while not os.path.isdir(os.path.join(repodir, self.adminDir)): |
1649 repodir = os.path.dirname(repodir) |
1754 repodir = os.path.dirname(repodir) |
1650 if repodir == os.sep: |
1755 if repodir == os.sep: |
1651 return |
1756 return |
1652 |
1757 |
1665 @param name file/directory name (string) |
1770 @param name file/directory name (string) |
1666 """ |
1771 """ |
1667 dname, fname = self.splitPath(name) |
1772 dname, fname = self.splitPath(name) |
1668 |
1773 |
1669 # find the root of the repo |
1774 # find the root of the repo |
1670 repodir = str(dname) |
1775 repodir = dname |
1671 while not os.path.isdir(os.path.join(repodir, self.adminDir)): |
1776 while not os.path.isdir(os.path.join(repodir, self.adminDir)): |
1672 repodir = os.path.dirname(repodir) |
1777 repodir = os.path.dirname(repodir) |
1673 if repodir == os.sep: |
1778 if repodir == os.sep: |
1674 return |
1779 return |
1675 |
1780 |
1733 @param name file/directory name (string) |
1838 @param name file/directory name (string) |
1734 """ |
1839 """ |
1735 dname, fname = self.splitPath(name) |
1840 dname, fname = self.splitPath(name) |
1736 |
1841 |
1737 # find the root of the repo |
1842 # find the root of the repo |
1738 repodir = str(dname) |
1843 repodir = dname |
1739 while not os.path.isdir(os.path.join(repodir, self.adminDir)): |
1844 while not os.path.isdir(os.path.join(repodir, self.adminDir)): |
1740 repodir = os.path.dirname(repodir) |
1845 repodir = os.path.dirname(repodir) |
1741 if repodir == os.sep: |
1846 if repodir == os.sep: |
1742 return |
1847 return |
1743 |
1848 |
1744 dlg = HgBundleDialog(self.tagsList, self.branchesList) |
1849 if self.isExtensionActive("bookmarks"): |
|
1850 bookmarksList = \ |
|
1851 self.getExtensionObject("bookmarks").hgGetBookmarksList(repodir) |
|
1852 else: |
|
1853 bookmarksList = None |
|
1854 dlg = HgBundleDialog(self.hgGetTagsList(repodir), |
|
1855 self.hgGetBranchesList(repodir), |
|
1856 bookmarksList) |
1745 if dlg.exec_() == QDialog.Accepted: |
1857 if dlg.exec_() == QDialog.Accepted: |
1746 rev, compression, all = dlg.getParameters() |
1858 rev, compression, all = dlg.getParameters() |
1747 |
1859 |
1748 fname, selectedFilter = E5FileDialog.getSaveFileNameAndFilter( |
1860 fname, selectedFilter = E5FileDialog.getSaveFileNameAndFilter( |
1749 None, |
1861 None, |
1797 @param name directory name on which to base the changegroup (string) |
1909 @param name directory name on which to base the changegroup (string) |
1798 """ |
1910 """ |
1799 dname, fname = self.splitPath(name) |
1911 dname, fname = self.splitPath(name) |
1800 |
1912 |
1801 # find the root of the repo |
1913 # find the root of the repo |
1802 repodir = str(dname) |
1914 repodir = dname |
1803 while not os.path.isdir(os.path.join(repodir, self.adminDir)): |
1915 while not os.path.isdir(os.path.join(repodir, self.adminDir)): |
1804 repodir = os.path.dirname(repodir) |
1916 repodir = os.path.dirname(repodir) |
1805 if repodir == os.sep: |
1917 if repodir == os.sep: |
1806 return |
1918 return |
1807 |
1919 |
1828 @param name directory name on which to base the changegroup (string) |
1940 @param name directory name on which to base the changegroup (string) |
1829 """ |
1941 """ |
1830 dname, fname = self.splitPath(name) |
1942 dname, fname = self.splitPath(name) |
1831 |
1943 |
1832 # find the root of the repo |
1944 # find the root of the repo |
1833 repodir = str(dname) |
1945 repodir = dname |
1834 while not os.path.isdir(os.path.join(repodir, self.adminDir)): |
1946 while not os.path.isdir(os.path.join(repodir, self.adminDir)): |
1835 repodir = os.path.dirname(repodir) |
1947 repodir = os.path.dirname(repodir) |
1836 if repodir == os.sep: |
1948 if repodir == os.sep: |
1837 return |
1949 return |
1838 |
1950 |
1858 @param name directory name (string) |
1970 @param name directory name (string) |
1859 """ |
1971 """ |
1860 dname, fname = self.splitPath(name) |
1972 dname, fname = self.splitPath(name) |
1861 |
1973 |
1862 # find the root of the repo |
1974 # find the root of the repo |
1863 repodir = str(dname) |
1975 repodir = dname |
1864 while not os.path.isdir(os.path.join(repodir, self.adminDir)): |
1976 while not os.path.isdir(os.path.join(repodir, self.adminDir)): |
1865 repodir = os.path.dirname(repodir) |
1977 repodir = os.path.dirname(repodir) |
1866 if repodir == os.sep: |
1978 if repodir == os.sep: |
1867 return |
1979 return |
1868 |
1980 |
1901 self.trUtf8("Bisect subcommand ({0}) invalid.").format(subcommand)) |
2013 self.trUtf8("Bisect subcommand ({0}) invalid.").format(subcommand)) |
1902 |
2014 |
1903 dname, fname = self.splitPath(name) |
2015 dname, fname = self.splitPath(name) |
1904 |
2016 |
1905 # find the root of the repo |
2017 # find the root of the repo |
1906 repodir = str(dname) |
2018 repodir = dname |
1907 while not os.path.isdir(os.path.join(repodir, self.adminDir)): |
2019 while not os.path.isdir(os.path.join(repodir, self.adminDir)): |
1908 repodir = os.path.dirname(repodir) |
2020 repodir = os.path.dirname(repodir) |
1909 if repodir == os.sep: |
2021 if repodir == os.sep: |
1910 return |
2022 return |
1911 |
2023 |
1912 rev = "" |
2024 rev = "" |
1913 if subcommand in ("good", "bad"): |
2025 if subcommand in ("good", "bad"): |
1914 dlg = HgRevisionSelectionDialog(self.tagsList, self.branchesList, |
2026 if self.isExtensionActive("bookmarks"): |
|
2027 bookmarksList = \ |
|
2028 self.getExtensionObject("bookmarks").hgGetBookmarksList(repodir) |
|
2029 else: |
|
2030 bookmarksList = None |
|
2031 dlg = HgRevisionSelectionDialog(self.hgGetTagsList(repodir), |
|
2032 self.hgGetBranchesList(repodir), |
|
2033 bookmarksList, |
1915 showNone=True) |
2034 showNone=True) |
1916 if dlg.exec_() == QDialog.Accepted: |
2035 if dlg.exec_() == QDialog.Accepted: |
1917 rev = dlg.getRevision() |
2036 rev = dlg.getRevision() |
1918 else: |
2037 else: |
1919 return |
2038 return |
1973 @param name directory name (string or list of strings) |
2092 @param name directory name (string or list of strings) |
1974 """ |
2093 """ |
1975 dname, fname = self.splitPath(name) |
2094 dname, fname = self.splitPath(name) |
1976 |
2095 |
1977 # find the root of the repo |
2096 # find the root of the repo |
1978 repodir = str(dname) |
2097 repodir = dname |
1979 while not os.path.isdir(os.path.join(repodir, self.adminDir)): |
2098 while not os.path.isdir(os.path.join(repodir, self.adminDir)): |
1980 repodir = os.path.dirname(repodir) |
2099 repodir = os.path.dirname(repodir) |
1981 if repodir == os.sep: |
2100 if repodir == os.sep: |
1982 return |
2101 return |
1983 |
2102 |
1984 dlg = HgBackoutDialog(self.tagsList, self.branchesList) |
2103 if self.isExtensionActive("bookmarks"): |
|
2104 bookmarksList = \ |
|
2105 self.getExtensionObject("bookmarks").hgGetBookmarksList(repodir) |
|
2106 else: |
|
2107 bookmarksList = None |
|
2108 dlg = HgBackoutDialog(self.hgGetTagsList(repodir), |
|
2109 self.hgGetBranchesList(repodir), |
|
2110 bookmarksList) |
1985 if dlg.exec_() == QDialog.Accepted: |
2111 if dlg.exec_() == QDialog.Accepted: |
1986 rev, merge, date, user, message = dlg.getParameters() |
2112 rev, merge, date, user, message = dlg.getParameters() |
1987 if not rev: |
2113 if not rev: |
1988 E5MessageBox.warning(self.__ui, |
2114 E5MessageBox.warning(self.__ui, |
1989 self.trUtf8("Backing out changeset"), |
2115 self.trUtf8("Backing out changeset"), |
2017 @param name directory name (string or list of strings) |
2143 @param name directory name (string or list of strings) |
2018 """ |
2144 """ |
2019 dname, fname = self.splitPath(name) |
2145 dname, fname = self.splitPath(name) |
2020 |
2146 |
2021 # find the root of the repo |
2147 # find the root of the repo |
2022 repodir = str(dname) |
2148 repodir = dname |
2023 while not os.path.isdir(os.path.join(repodir, self.adminDir)): |
2149 while not os.path.isdir(os.path.join(repodir, self.adminDir)): |
2024 repodir = os.path.dirname(repodir) |
2150 repodir = os.path.dirname(repodir) |
2025 if repodir == os.sep: |
2151 if repodir == os.sep: |
2026 return |
2152 return |
2027 |
2153 |
2042 @param name directory name (string) |
2168 @param name directory name (string) |
2043 """ |
2169 """ |
2044 dname, fname = self.splitPath(name) |
2170 dname, fname = self.splitPath(name) |
2045 |
2171 |
2046 # find the root of the repo |
2172 # find the root of the repo |
2047 repodir = str(dname) |
2173 repodir = dname |
2048 while not os.path.isdir(os.path.join(repodir, self.adminDir)): |
2174 while not os.path.isdir(os.path.join(repodir, self.adminDir)): |
2049 repodir = os.path.dirname(repodir) |
2175 repodir = os.path.dirname(repodir) |
2050 if repodir == os.sep: |
2176 if repodir == os.sep: |
2051 return |
2177 return |
2052 |
2178 |
2072 @param name directory name pointing into the repository (string) |
2198 @param name directory name pointing into the repository (string) |
2073 """ |
2199 """ |
2074 dname, fname = self.splitPath(name) |
2200 dname, fname = self.splitPath(name) |
2075 |
2201 |
2076 # find the root of the repo |
2202 # find the root of the repo |
2077 repodir = str(dname) |
2203 repodir = dname |
2078 while not os.path.isdir(os.path.join(repodir, self.adminDir)): |
2204 while not os.path.isdir(os.path.join(repodir, self.adminDir)): |
2079 repodir = os.path.dirname(repodir) |
2205 repodir = os.path.dirname(repodir) |
2080 if repodir == os.sep: |
2206 if repodir == os.sep: |
2081 return |
2207 return |
2082 |
2208 |