Mercurial > hg > mercurial-crew-with-dirclash
comparison mercurial/localrepo.py @ 3032:4d0e0f149581
localrepo: move the repo creation code, fail if the repo exists
author | Benoit Boissinot <benoit.boissinot@ens-lyon.org> |
---|---|
date | Sat, 02 Sep 2006 23:06:47 +0200 |
parents | aebc3f64b20f |
children | bc3fe3b5b785 |
comparison
equal
deleted
inserted
replaced
3031:2b0bc36a48d8 | 3032:4d0e0f149581 |
---|---|
29 if p == oldp: | 29 if p == oldp: |
30 raise repo.RepoError(_("no repo found")) | 30 raise repo.RepoError(_("no repo found")) |
31 path = p | 31 path = p |
32 self.path = os.path.join(path, ".hg") | 32 self.path = os.path.join(path, ".hg") |
33 | 33 |
34 if not create and not os.path.isdir(self.path): | 34 if not os.path.isdir(self.path): |
35 raise repo.RepoError(_("repository %s not found") % path) | 35 if create: |
36 if not os.path.exists(path): | |
37 os.mkdir(path) | |
38 os.mkdir(self.path) | |
39 os.mkdir(self.join("data")) | |
40 else: | |
41 raise repo.RepoError(_("repository %s not found") % path) | |
42 elif create: | |
43 raise repo.RepoError(_("repository %s already exists") % path) | |
36 | 44 |
37 self.root = os.path.abspath(path) | 45 self.root = os.path.abspath(path) |
38 self.origroot = path | 46 self.origroot = path |
39 self.ui = ui.ui(parentui=parentui) | 47 self.ui = ui.ui(parentui=parentui) |
40 self.opener = util.opener(self.path) | 48 self.opener = util.opener(self.path) |
72 self.tagscache = None | 80 self.tagscache = None |
73 self.nodetagscache = None | 81 self.nodetagscache = None |
74 self.encodepats = None | 82 self.encodepats = None |
75 self.decodepats = None | 83 self.decodepats = None |
76 self.transhandle = None | 84 self.transhandle = None |
77 | |
78 if create: | |
79 if not os.path.exists(path): | |
80 os.mkdir(path) | |
81 os.mkdir(self.path) | |
82 os.mkdir(self.join("data")) | |
83 | 85 |
84 self.dirstate = dirstate.dirstate(self.opener, self.ui, self.root) | 86 self.dirstate = dirstate.dirstate(self.opener, self.ui, self.root) |
85 | 87 |
86 def url(self): | 88 def url(self): |
87 return 'file:' + self.root | 89 return 'file:' + self.root |