本文整理汇总了Python中tortoisehg.util.paths.find_root函数的典型用法代码示例。如果您正苦于以下问题:Python find_root函数的具体用法?Python find_root怎么用?Python find_root使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了find_root函数的16个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Python代码示例。
示例1: log
def log(ui, *pats, **opts):
"""workbench application"""
root = opts.get('root') or paths.find_root()
if root and len(pats) == 1 and os.path.isfile(pats[0]):
# TODO: do not instantiate repo here
repo = thgrepo.repository(ui, root)
repoagent = repo._pyqtobj
return _filelog(ui, repoagent, *pats, **opts)
# Before starting the workbench, we must check if we must try to reuse an
# existing workbench window (we don't by default)
# Note that if the "single workbench mode" is enabled, and there is no
# existing workbench window, we must tell the Workbench object to create
# the workbench server
singleworkbenchmode = ui.configbool('tortoisehg', 'workbench.single', True)
mustcreateserver = False
if singleworkbenchmode:
newworkbench = opts.get('newworkbench')
if root and not newworkbench:
if qtapp.connectToExistingWorkbench(root):
# The were able to connect to an existing workbench server, and
# it confirmed that it has opened the selected repo for us
sys.exit(0)
# there is no pre-existing workbench server
serverexists = False
else:
serverexists = qtapp.connectToExistingWorkbench('[echo]')
# When in " single workbench mode", we must create a server if there
# is not one already
mustcreateserver = not serverexists
w = _workbench(ui, *pats, **opts)
if mustcreateserver:
qtrun.createWorkbenchServer()
return w
开发者ID:velorientc,项目名称:git_test7,代码行数:35,代码来源:run.py
示例2: runcommand
def runcommand(ui, args):
cmd, func, args, options, cmdoptions, alias = _parse(ui, args)
cmdoptions['alias'] = alias
ui.setconfig("ui", "verbose", str(bool(options["verbose"])))
i18n.setlanguage(ui.config('tortoisehg', 'ui.language'))
if options['help']:
return help_(ui, cmd)
if options['newworkbench']:
cmdoptions['newworkbench'] = True
path = options['repository']
if path:
if path.startswith('bundle:'):
s = path[7:].split('+', 1)
if len(s) == 1:
path, bundle = os.getcwd(), s[0]
else:
path, bundle = s
cmdoptions['bundle'] = os.path.abspath(bundle)
path = ui.expandpath(path)
# TODO: replace by abspath() if chdir() isn't necessary
try:
os.chdir(path)
path = os.getcwd()
except OSError:
pass
if options['profile']:
options['nofork'] = True
path = paths.find_root(path)
if path:
try:
lui = ui.copy()
lui.readconfig(os.path.join(path, ".hg", "hgrc"))
except IOError:
pass
else:
lui = ui
hglib.wrapextensionsloader() # enable blacklist of extensions
extensions.loadall(lui)
args += get_files_from_listfile()
if options['quiet']:
ui.quiet = True
# repository existence will be tested in qtrun()
if cmd not in nonrepo_commands.split():
cmdoptions['repository'] = path or options['repository'] or '.'
cmdoptions['mainapp'] = True
checkedfunc = util.checksignature(func)
if cmd in console_commands.split():
d = lambda: checkedfunc(ui, *args, **cmdoptions)
else:
portable_fork(ui, options)
d = lambda: qtrun(checkedfunc, ui, *args, **cmdoptions)
return _runcommand(lui, options, cmd, d)
开发者ID:velorientc,项目名称:git_test7,代码行数:60,代码来源:run.py
示例3: _workbench
def _workbench(ui, *pats, **opts):
root = opts.get('root') or paths.find_root()
# TODO: unclear that _workbench() is called inside qtrun(). maybe this
# function should receive factory object instead of using global qtrun.
w = qtrun.createWorkbench()
if root:
root = hglib.tounicode(root)
bundle = opts.get('bundle')
if bundle:
w.openRepo(root, False, bundle=hglib.tounicode(bundle))
else:
w.showRepo(root)
if pats:
q = []
for f in pats:
pat = hglib.canonpaths([f])[0]
if os.path.isdir(f):
q.append('file("%s/**")' % pat)
elif os.path.isfile(f):
q.append('file("%s")' % pat)
w.setRevsetFilter(root, ' or '.join(q))
if w.repoTabsWidget.count() <= 0:
w.reporegistry.setVisible(True)
return w
开发者ID:velorientc,项目名称:git_test7,代码行数:26,代码来源:run.py
示例4: dropEvent
def dropEvent(self, event):
data = event.mimeData()
index, group, row = self.dropLocation(event)
if index:
if event.source() is self:
# Event is an internal move, so pass it to the model
col = 0
drop = self.model().dropMimeData(data, event.dropAction(), row,
col, group)
if drop:
event.accept()
self.dropAccepted.emit()
else:
# Event is a drop of an external repo
accept = False
for u in data.urls():
root = paths.find_root(hglib.fromunicode(u.toLocalFile()))
if root and not self.model().getRepoItem(root):
self.model().addRepo(group, root, row)
accept = True
if accept:
event.setDropAction(Qt.LinkAction)
event.accept()
self.dropAccepted.emit()
self.setAutoScroll(False)
self.setState(QAbstractItemView.NoState)
self.viewport().update()
self.setAutoScroll(True)
开发者ID:gilshwartz,项目名称:tortoisehg-caja,代码行数:29,代码来源:reporegistry.py
示例5: run
def run(_ui, *pats, **opts):
from tortoisehg.util import paths
from tortoisehg.hgqt import thgrepo
repo = thgrepo.repository(_ui, path=paths.find_root())
if pats and pats[0].endswith('.hgignore'):
pats = []
return HgignoreDialog(repo, None, *pats)
开发者ID:gilshwartz,项目名称:tortoisehg-caja,代码行数:7,代码来源:hgignore.py
示例6: dropEvent
def dropEvent(self, event):
data = event.mimeData()
index, group, row = self.dropLocation(event)
if index:
m = self.model()
if event.source() is self:
# Event is an internal move, so pass it to the model
col = 0
if m.dropMimeData(data, event.dropAction(), row, col, group):
event.accept()
self.dropAccepted.emit()
else:
# Event is a drop of an external repo
accept = False
for u in data.urls():
uroot = paths.find_root(unicode(u.toLocalFile()))
if uroot and not m.isKnownRepoRoot(uroot, standalone=True):
repoindex = m.addRepo(uroot, row, group)
m.loadSubrepos(repoindex)
accept = True
if accept:
event.setDropAction(Qt.LinkAction)
event.accept()
self.dropAccepted.emit()
self.setAutoScroll(False)
self.setState(QAbstractItemView.NoState)
self.viewport().update()
self.setAutoScroll(True)
开发者ID:seewindcn,项目名称:tortoisehg,代码行数:29,代码来源:reporegistry.py
示例7: run
def run(_ui, *pats, **opts):
if opts.get('all'):
roots = []
base = os.getcwd()
for f in os.listdir(base):
r = paths.find_root(os.path.join(base, f))
if r is not None:
roots.append(r)
for r in roots:
_ui.note("%s\n" % r)
shlib.update_thgstatus(_ui, r, wait=False)
shlib.shell_notify([r])
return
root = paths.find_root()
if opts.get('repository'):
root = opts.get('repository')
if root is None:
_ui.status("no repository\n")
return
repo = hg.repository(_ui, root)
if opts.get('remove'):
try:
os.remove(cachefilepath(repo))
except OSError:
pass
return
if opts.get('show'):
try:
f = open(cachefilepath(repo), 'rb')
for e in f:
_ui.status("%s %s\n" % (e[0], e[1:-1]))
f.close()
except IOError:
_ui.status("*no status*\n")
return
wait = opts.get('delay') is not None
shlib.update_thgstatus(_ui, root, wait=wait)
if opts.get('notify'):
shlib.shell_notify(opts.get('notify'))
_ui.note("thgstatus updated\n")
开发者ID:gilshwartz,项目名称:tortoisehg-caja,代码行数:47,代码来源:thgstatus.py
示例8: run
def run(ui, *pats, **opts):
if 'repo' in opts:
repo = opts['repo']
else:
from tortoisehg.util import paths
from tortoisehg.hgqt import thgrepo
repo = thgrepo.repository(ui, path=paths.find_root())
return ShelveDialog(repo, None)
开发者ID:gilshwartz,项目名称:tortoisehg-caja,代码行数:8,代码来源:shelve.py
示例9: dragEnterEvent
def dragEnterEvent(self, event):
d = event.mimeData()
for u in d.urls():
root = paths.find_root(unicode(u.toLocalFile()))
if root:
event.setDropAction(Qt.LinkAction)
event.accept()
break
开发者ID:seewindcn,项目名称:tortoisehg,代码行数:8,代码来源:workbench.py
示例10: addRepo
def addRepo(self, group, root, row=-1):
grp = group
if grp == None:
grp = self.allreposIndex()
rgi = grp.internalPointer()
if row < 0:
row = rgi.childCount()
# make sure all paths are properly normalized
root = os.path.normpath(root)
# Check whether the repo that we are adding is a subrepo
# This check could be expensive, particularly for network repositories
# Thus, only perform this check on network repos if the showNetworkSubrepos
# flag is set
itemIsSubrepo = False
if self.showNetworkSubrepos \
or not paths.netdrive_status(root):
outerrepopath = paths.find_root(os.path.dirname(root))
if outerrepopath:
# Check whether repo we are adding is a subrepo of
# its containing (outer) repo
# This check is currently quite imperfect, since it
# only checks the current repo revision
outerrepo = hg.repository(ui.ui(), path=outerrepopath)
relroot = util.normpath(root[len(outerrepopath)+1:])
if relroot in outerrepo['.'].substate:
itemIsSubrepo = True
self.beginInsertRows(grp, row, row)
if itemIsSubrepo:
ri = SubrepoItem(root)
else:
ri = RepoItem(root)
rgi.insertChild(row, ri)
if not self.showSubrepos \
or (not self.showNetworkSubrepos and paths.netdrive_status(root)):
self.endInsertRows()
return
invalidRepoList = ri.appendSubrepos()
self.endInsertRows()
if invalidRepoList:
if invalidRepoList[0] == root:
qtlib.WarningMsgBox(_('Could not get subrepository list'),
_('It was not possible to get the subrepository list for '
'the repository in:<br><br><i>%s</i>') % root)
else:
qtlib.WarningMsgBox(_('Could not open some subrepositories'),
_('It was not possible to fully load the subrepository '
'list for the repository in:<br><br><i>%s</i><br><br>'
'The following subrepositories may be missing, broken or '
'on an inconsistent state and cannot be accessed:'
'<br><br><i>%s</i>') %
(root, "<br>".join(invalidRepoList)))
开发者ID:gilshwartz,项目名称:tortoisehg-caja,代码行数:58,代码来源:repotreemodel.py
示例11: runcommand
def runcommand(ui, args):
cmd, func, args, options, cmdoptions, alias = _parse(ui, args)
cmdoptions['alias'] = alias
ui.setconfig("ui", "verbose", str(bool(options["verbose"])))
i18n.setlanguage(ui.config('tortoisehg', 'ui.language'))
if options['help']:
return help_(ui, cmd)
if options['newworkbench']:
cmdoptions['newworkbench'] = True
path = options['repository']
if path:
if path.startswith('bundle:'):
s = path[7:].split('+', 1)
if len(s) == 1:
path, bundle = os.getcwd(), s[0]
else:
path, bundle = s
cmdoptions['bundle'] = os.path.abspath(bundle)
path = ui.expandpath(path)
if not os.path.exists(path) or not os.path.isdir(path+'/.hg'):
print 'abort: %s is not a repository' % path
return 1
os.chdir(path)
if options['fork']:
cmdoptions['fork'] = True
if options['nofork'] or options['profile']:
cmdoptions['nofork'] = True
path = paths.find_root(os.getcwd())
if path:
cmdoptions['repository'] = path
try:
lui = ui.copy()
lui.readconfig(os.path.join(path, ".hg", "hgrc"))
except IOError:
pass
else:
lui = ui
hglib.wrapextensionsloader() # enable blacklist of extensions
extensions.loadall(lui)
args += get_files_from_listfile()
if options['quiet']:
ui.quiet = True
if cmd not in nonrepo_commands.split() and not path:
raise error.RepoError(_("There is no Mercurial repository here"
" (.hg not found)"))
cmdoptions['mainapp'] = True
d = lambda: util.checksignature(func)(ui, *args, **cmdoptions)
return _runcommand(lui, options, cmd, d)
开发者ID:gilshwartz,项目名称:tortoisehg-caja,代码行数:56,代码来源:run.py
示例12: run
def run(ui, *pats, **opts):
from tortoisehg.util import paths
repo = thgrepo.repository(ui, path=paths.find_root())
if opts.get('rev'):
rev = opts.get('rev')
elif len(pats) == 1:
rev = pats[0]
else:
rev = 'tip'
return BackoutDialog(rev, repo, None)
开发者ID:gilshwartz,项目名称:tortoisehg-caja,代码行数:10,代码来源:backout.py
示例13: __do_run
def __do_run(ui, command, *pats, **_opts):
root = paths.find_root()
repo = thgrepo.repository(ui, root)
pats = hglib.canonpaths(pats)
cmdline = [command] + pats
instance = quickop.HeadlessQuickop(repo, cmdline)
return instance
开发者ID:gilshwartz,项目名称:tortoisehg-caja,代码行数:10,代码来源:dnd.py
示例14: getrepos
def getrepos(batch):
roots = set()
notifypaths = set()
for path in batch:
r = paths.find_root(path)
if r is None:
try:
for n in os.listdir(path):
r = paths.find_root(os.path.join(path, n))
if (r is not None):
roots.add(r)
notifypaths.add(r)
except Exception, e:
# This exception raises in case of fixutf8 extension enabled
# and folder name contains '0x5c'(backslash).
logger.msg('Failed listdir %s (%s)' % (path, str(e)))
else:
roots.add(r);
notifypaths.add(path)
开发者ID:velorientc,项目名称:git_test7,代码行数:19,代码来源:TortoiseHgOverlayServer.py
示例15: open_repo
def open_repo(path):
root = paths.find_root(path)
if root:
try:
repo = hg.repository(ui.ui(), path=root)
return repo
except error.RepoError:
pass
except StandardError, e:
print "error while opening repo %s:" % path
print e
开发者ID:seewindcn,项目名称:tortoisehg,代码行数:11,代码来源:menuthg.py
示例16: run
def run(ui, *pats, **opts):
from tortoisehg.util import paths
repo = thgrepo.repository(ui, path=paths.find_root())
if os.path.exists(repo.join('rebasestate')):
qtlib.InfoMsgBox(_('Rebase already in progress'),
_('Resuming rebase already in progress'))
elif not opts['source'] or not opts['dest']:
qtlib.ErrorMsgBox(_('Abort'),
_('You must provide source and dest arguments'))
import sys; sys.exit()
return RebaseDialog(repo, None, **opts)
开发者ID:gilshwartz,项目名称:tortoisehg-caja,代码行数:11,代码来源:rebase.py
注:本文中的tortoisehg.util.paths.find_root函数示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论