Mercurial > gub
changeset 5543:a4662d7b5d74
repository: share have_git () with subversion. Fixes using tools::subversion.
author | Jan Nieuwenhuizen <janneke@gnu.org> |
---|---|
date | Fri, 21 Aug 2009 17:17:11 +0200 |
parents | c7810c574826 |
children | 469259ca434a |
files | gub/repository.py |
diffstat | 1 files changed, 18 insertions(+), 12 deletions(-) [+] |
line wrap: on
line diff
--- a/gub/repository.py Fri Aug 21 17:01:58 2009 +0200 +++ b/gub/repository.py Fri Aug 21 17:17:11 2009 +0200 @@ -136,6 +136,17 @@ @staticmethod def create (rety, dir, source, branch='', module='', revision='', parameters=list ()): return rety (dir, source, branch, module, revision) + def have_client (self): + # FIXME: make generic: have_CLIENT ()? + # this would even work for TAR, vs SimpleTar (without --strip-comp) + if self.settings: + tools_dir = (self.settings.alltargetdir + '/tools' + + self.settings.root_dir) + tools_bin = (tools_dir + + self.settings.prefix_dir + + '/bin') + return os.path.exists (os.path.join (tools_bin, self.vc_system[1:])) + return False def migrate (self, dir, dir_slash_vcs): self.info ('migrate not implemented for: ' + self.vc_system + '\n') def __init__ (self, dir, source): @@ -596,19 +607,8 @@ ignore_errors=True) return bool (result) return True - def have_git (self): - # FIXME: make generic: have_CLIENT ()? - # this would even work for TAR, vs SimpleTar (without --strip-comp) - if self.settings: - tools_dir = (self.settings.alltargetdir + '/tools' - + self.settings.root_dir) - tools_bin = (tools_dir - + self.settings.prefix_dir - + '/bin') - return os.path.exists (os.path.join (tools_bin, 'git')) - return False def download (self): - if not self.have_git (): + if not self.have_client (): # sorry, no can do [yet] return if not os.path.isdir (os.path.join (self.dir, 'refs')): @@ -966,6 +966,12 @@ revision = 'HEAD' SimpleRepo.__init__ (self, dir, source, branch, module, revision) + def download (self): + if not self.have_client (): + # sorry, no can do [yet] + return + SimpleRepo.download (self) + def is_distributed (self): return False