annotate mercurial/hg.py @ 2462:d610bcfd66a8

util: add limit to amount filechunkiter will read
author Vadim Gelfer <vadim.gelfer@gmail.com>
date Tue, 20 Jun 2006 15:13:17 -0700
parents d90a9d7c7d4d
children 2e91ba371c4c e6ec81a8feea
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
9117c6561b0b Add back links from file revisions to changeset revisions
mpm@selenic.com
parents:
diff changeset
1 # hg.py - repository classes for mercurial
9117c6561b0b Add back links from file revisions to changeset revisions
mpm@selenic.com
parents:
diff changeset
2 #
9117c6561b0b Add back links from file revisions to changeset revisions
mpm@selenic.com
parents:
diff changeset
3 # Copyright 2005 Matt Mackall <mpm@selenic.com>
9117c6561b0b Add back links from file revisions to changeset revisions
mpm@selenic.com
parents:
diff changeset
4 #
9117c6561b0b Add back links from file revisions to changeset revisions
mpm@selenic.com
parents:
diff changeset
5 # This software may be used and distributed according to the terms
9117c6561b0b Add back links from file revisions to changeset revisions
mpm@selenic.com
parents:
diff changeset
6 # of the GNU General Public License, incorporated herein by reference.
9117c6561b0b Add back links from file revisions to changeset revisions
mpm@selenic.com
parents:
diff changeset
7
1089
142b5d5ec9cc Break apart hg.py
mpm@selenic.com
parents: 1072
diff changeset
8 from node import *
142b5d5ec9cc Break apart hg.py
mpm@selenic.com
parents: 1072
diff changeset
9 from repo import *
262
3db700146536 implement demand loading hack
mpm@selenic.com
parents: 256
diff changeset
10 from demandload import *
2431
d90a9d7c7d4d replace old-http:// syntax by static-http:// and deprecate the redundant hg://
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents: 1945
diff changeset
11 from i18n import gettext as _
1945
dec6d3c13dbf new type of repo: bundle://path/to/repo+/path/to/bundlename
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents: 1102
diff changeset
12 demandload(globals(), "localrepo bundlerepo httprepo sshrepo statichttprepo")
0
9117c6561b0b Add back links from file revisions to changeset revisions
mpm@selenic.com
parents:
diff changeset
13
60
e32fdbd97839 Add hg:// protocol
mpm@selenic.com
parents: 56
diff changeset
14 def repository(ui, path=None, create=0):
623
314867960a4a Change remote repository to httprepository
Matt Mackall <mpm@selenic.com>
parents: 622
diff changeset
15 if path:
314867960a4a Change remote repository to httprepository
Matt Mackall <mpm@selenic.com>
parents: 622
diff changeset
16 if path.startswith("http://"):
1089
142b5d5ec9cc Break apart hg.py
mpm@selenic.com
parents: 1072
diff changeset
17 return httprepo.httprepository(ui, path)
923
c7a3b88505cd Add basic https support for pull
mpm@selenic.com
parents: 919
diff changeset
18 if path.startswith("https://"):
1089
142b5d5ec9cc Break apart hg.py
mpm@selenic.com
parents: 1072
diff changeset
19 return httprepo.httpsrepository(ui, path)
623
314867960a4a Change remote repository to httprepository
Matt Mackall <mpm@selenic.com>
parents: 622
diff changeset
20 if path.startswith("hg://"):
2431
d90a9d7c7d4d replace old-http:// syntax by static-http:// and deprecate the redundant hg://
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents: 1945
diff changeset
21 ui.warn(_("hg:// syntax is deprecated, "
d90a9d7c7d4d replace old-http:// syntax by static-http:// and deprecate the redundant hg://
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents: 1945
diff changeset
22 "please use http:// instead\n"))
1089
142b5d5ec9cc Break apart hg.py
mpm@selenic.com
parents: 1072
diff changeset
23 return httprepo.httprepository(
142b5d5ec9cc Break apart hg.py
mpm@selenic.com
parents: 1072
diff changeset
24 ui, path.replace("hg://", "http://"))
623
314867960a4a Change remote repository to httprepository
Matt Mackall <mpm@selenic.com>
parents: 622
diff changeset
25 if path.startswith("old-http://"):
2431
d90a9d7c7d4d replace old-http:// syntax by static-http:// and deprecate the redundant hg://
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents: 1945
diff changeset
26 ui.warn(_("old-http:// syntax is deprecated, "
d90a9d7c7d4d replace old-http:// syntax by static-http:// and deprecate the redundant hg://
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents: 1945
diff changeset
27 "please use static-http:// instead\n"))
1101
2cf5c8a4eae5 Separate out old-http support
mpm@selenic.com
parents: 1094
diff changeset
28 return statichttprepo.statichttprepository(
2cf5c8a4eae5 Separate out old-http support
mpm@selenic.com
parents: 1094
diff changeset
29 ui, path.replace("old-http://", "http://"))
2431
d90a9d7c7d4d replace old-http:// syntax by static-http:// and deprecate the redundant hg://
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents: 1945
diff changeset
30 if path.startswith("static-http://"):
d90a9d7c7d4d replace old-http:// syntax by static-http:// and deprecate the redundant hg://
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents: 1945
diff changeset
31 return statichttprepo.statichttprepository(
d90a9d7c7d4d replace old-http:// syntax by static-http:// and deprecate the redundant hg://
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents: 1945
diff changeset
32 ui, path.replace("static-http://", "http://"))
624
876333a295ff Add an sshrepository class and hg serve --stdio
Matt Mackall <mpm@selenic.com>
parents: 623
diff changeset
33 if path.startswith("ssh://"):
1089
142b5d5ec9cc Break apart hg.py
mpm@selenic.com
parents: 1072
diff changeset
34 return sshrepo.sshrepository(ui, path)
1945
dec6d3c13dbf new type of repo: bundle://path/to/repo+/path/to/bundlename
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents: 1102
diff changeset
35 if path.startswith("bundle://"):
dec6d3c13dbf new type of repo: bundle://path/to/repo+/path/to/bundlename
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents: 1102
diff changeset
36 path = path[9:]
dec6d3c13dbf new type of repo: bundle://path/to/repo+/path/to/bundlename
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents: 1102
diff changeset
37 s = path.split("+", 1)
dec6d3c13dbf new type of repo: bundle://path/to/repo+/path/to/bundlename
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents: 1102
diff changeset
38 if len(s) == 1:
dec6d3c13dbf new type of repo: bundle://path/to/repo+/path/to/bundlename
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents: 1102
diff changeset
39 repopath, bundlename = "", s[0]
dec6d3c13dbf new type of repo: bundle://path/to/repo+/path/to/bundlename
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents: 1102
diff changeset
40 else:
dec6d3c13dbf new type of repo: bundle://path/to/repo+/path/to/bundlename
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents: 1102
diff changeset
41 repopath, bundlename = s
dec6d3c13dbf new type of repo: bundle://path/to/repo+/path/to/bundlename
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents: 1102
diff changeset
42 return bundlerepo.bundlerepository(ui, repopath, bundlename)
60
e32fdbd97839 Add hg:// protocol
mpm@selenic.com
parents: 56
diff changeset
43
1102
c81d264cd17d localrepo: minor opener usage restructuring
mpm@selenic.com
parents: 1101
diff changeset
44 return localrepo.localrepository(ui, path, create)