Show More
@@ -0,0 +1,1 | |||
|
1 | test@test.com No newline at end of file |
@@ -0,0 +1,59 | |||
|
1 | # Binary file regexps: | |
|
2 | \.png$ | |
|
3 | \.PNG$ | |
|
4 | \.gz$ | |
|
5 | \.GZ$ | |
|
6 | \.pdf$ | |
|
7 | \.PDF$ | |
|
8 | \.jpg$ | |
|
9 | \.JPG$ | |
|
10 | \.jpeg$ | |
|
11 | \.JPEG$ | |
|
12 | \.gif$ | |
|
13 | \.GIF$ | |
|
14 | \.tif$ | |
|
15 | \.TIF$ | |
|
16 | \.tiff$ | |
|
17 | \.TIFF$ | |
|
18 | \.pnm$ | |
|
19 | \.PNM$ | |
|
20 | \.pbm$ | |
|
21 | \.PBM$ | |
|
22 | \.pgm$ | |
|
23 | \.PGM$ | |
|
24 | \.ppm$ | |
|
25 | \.PPM$ | |
|
26 | \.bmp$ | |
|
27 | \.BMP$ | |
|
28 | \.mng$ | |
|
29 | \.MNG$ | |
|
30 | \.tar$ | |
|
31 | \.TAR$ | |
|
32 | \.bz2$ | |
|
33 | \.BZ2$ | |
|
34 | \.z$ | |
|
35 | \.Z$ | |
|
36 | \.zip$ | |
|
37 | \.ZIP$ | |
|
38 | \.jar$ | |
|
39 | \.JAR$ | |
|
40 | \.so$ | |
|
41 | \.SO$ | |
|
42 | \.a$ | |
|
43 | \.A$ | |
|
44 | \.tgz$ | |
|
45 | \.TGZ$ | |
|
46 | \.mpg$ | |
|
47 | \.MPG$ | |
|
48 | \.mpeg$ | |
|
49 | \.MPEG$ | |
|
50 | \.iso$ | |
|
51 | \.ISO$ | |
|
52 | \.exe$ | |
|
53 | \.EXE$ | |
|
54 | \.doc$ | |
|
55 | \.DOC$ | |
|
56 | \.elc$ | |
|
57 | \.ELC$ | |
|
58 | \.pyc$ | |
|
59 | \.PYC$ |
@@ -0,0 +1,49 | |||
|
1 | # Boring file regexps: | |
|
2 | \.hi$ | |
|
3 | \.hi-boot$ | |
|
4 | \.o-boot$ | |
|
5 | \.o$ | |
|
6 | \.o\.cmd$ | |
|
7 | # *.ko files aren't boring by default because they might | |
|
8 | # be Korean translations rather than kernel modules. | |
|
9 | # \.ko$ | |
|
10 | \.ko\.cmd$ | |
|
11 | \.mod\.c$ | |
|
12 | (^|/)\.tmp_versions($|/) | |
|
13 | (^|/)CVS($|/) | |
|
14 | \.cvsignore$ | |
|
15 | ^\.# | |
|
16 | (^|/)RCS($|/) | |
|
17 | ,v$ | |
|
18 | (^|/)\.svn($|/) | |
|
19 | \.bzr$ | |
|
20 | (^|/)SCCS($|/) | |
|
21 | ~$ | |
|
22 | (^|/)_darcs($|/) | |
|
23 | \.bak$ | |
|
24 | \.BAK$ | |
|
25 | \.orig$ | |
|
26 | \.rej$ | |
|
27 | (^|/)vssver\.scc$ | |
|
28 | \.swp$ | |
|
29 | (^|/)MT($|/) | |
|
30 | (^|/)\{arch\}($|/) | |
|
31 | (^|/).arch-ids($|/) | |
|
32 | (^|/), | |
|
33 | \.prof$ | |
|
34 | (^|/)\.DS_Store$ | |
|
35 | (^|/)BitKeeper($|/) | |
|
36 | (^|/)ChangeSet($|/) | |
|
37 | \.py[co]$ | |
|
38 | \.elc$ | |
|
39 | \.class$ | |
|
40 | \# | |
|
41 | (^|/)Thumbs\.db$ | |
|
42 | (^|/)autom4te\.cache($|/) | |
|
43 | (^|/)config\.(log|status)$ | |
|
44 | ^\.depend$ | |
|
45 | (^|/)(tags|TAGS)$ | |
|
46 | #(^|/)\.[^/] | |
|
47 | (^|/|\.)core$ | |
|
48 | \.(obj|a|exe|so|lo|la)$ | |
|
49 | ^\.darcs-temp-mail$ |
|
1 | NO CONTENT: new file 100644 |
@@ -0,0 +1,1 | |||
|
1 | a |
@@ -0,0 +1,1 | |||
|
1 | a |
@@ -224,6 +224,7 def reposetup(ui, repo): | |||
|
224 | 224 | in the .hg/bookmarks file. |
|
225 | 225 | Read the file and return a (name=>nodeid) dictionary |
|
226 | 226 | ''' |
|
227 | self._loadingbookmarks = True | |
|
227 | 228 | try: |
|
228 | 229 | bookmarks = {} |
|
229 | 230 | for line in self.opener('bookmarks'): |
@@ -231,6 +232,7 def reposetup(ui, repo): | |||
|
231 | 232 | bookmarks[refspec] = super(bookmark_repo, self).lookup(sha) |
|
232 | 233 | except: |
|
233 | 234 | pass |
|
235 | self._loadingbookmarks = False | |
|
234 | 236 | return bookmarks |
|
235 | 237 | |
|
236 | 238 | @util.propertycache |
@@ -257,8 +259,9 def reposetup(ui, repo): | |||
|
257 | 259 | return super(bookmark_repo, self).rollback(*args) |
|
258 | 260 | |
|
259 | 261 | def lookup(self, key): |
|
260 |
if |
|
|
261 |
key |
|
|
262 | if not getattr(self, '_loadingbookmarks', False): | |
|
263 | if key in self._bookmarks: | |
|
264 | key = self._bookmarks[key] | |
|
262 | 265 | return super(bookmark_repo, self).lookup(key) |
|
263 | 266 | |
|
264 | 267 | def _bookmarksupdate(self, parents, node): |
@@ -357,7 +360,8 def reposetup(ui, repo): | |||
|
357 | 360 | def _findtags(self): |
|
358 | 361 | """Merge bookmarks with normal tags""" |
|
359 | 362 | (tags, tagtypes) = super(bookmark_repo, self)._findtags() |
|
360 |
|
|
|
363 | if not getattr(self, '_loadingbookmarks', False): | |
|
364 | tags.update(self._bookmarks) | |
|
361 | 365 | return (tags, tagtypes) |
|
362 | 366 | |
|
363 | 367 | if hasattr(repo, 'invalidate'): |
@@ -8,7 +8,7 | |||
|
8 | 8 | from common import NoRepo, checktool, commandline, commit, converter_source |
|
9 | 9 | from mercurial.i18n import _ |
|
10 | 10 | from mercurial import util |
|
11 | import os, shutil, tempfile | |
|
11 | import os, shutil, tempfile, re | |
|
12 | 12 | |
|
13 | 13 | # The naming drift of ElementTree is fun! |
|
14 | 14 | |
@@ -31,11 +31,8 class darcs_source(converter_source, com | |||
|
31 | 31 | converter_source.__init__(self, ui, path, rev=rev) |
|
32 | 32 | commandline.__init__(self, ui, 'darcs') |
|
33 | 33 | |
|
34 |
# check for _darcs, ElementTree |
|
|
35 |
# |
|
|
36 | if not os.path.exists(os.path.join(path, '_darcs', 'inventories')): | |
|
37 | raise NoRepo(_("%s does not look like a darcs repository") % path) | |
|
38 | ||
|
34 | # check for _darcs, ElementTree so that we can easily skip | |
|
35 | # test-convert-darcs if ElementTree is not around | |
|
39 | 36 | if not os.path.exists(os.path.join(path, '_darcs')): |
|
40 | 37 | raise NoRepo(_("%s does not look like a darcs repository") % path) |
|
41 | 38 | |
@@ -55,6 +52,15 class darcs_source(converter_source, com | |||
|
55 | 52 | self.parents = {} |
|
56 | 53 | self.tags = {} |
|
57 | 54 | |
|
55 | # Check darcs repository format | |
|
56 | format = self.format() | |
|
57 | if format: | |
|
58 | if format in ('darcs-1.0', 'hashed'): | |
|
59 | raise NoRepo(_("%s repository format is unsupported, " | |
|
60 | "please upgrade") % format) | |
|
61 | else: | |
|
62 | self.ui.warn(_('failed to detect repository format!')) | |
|
63 | ||
|
58 | 64 | def before(self): |
|
59 | 65 | self.tmppath = tempfile.mkdtemp( |
|
60 | 66 | prefix='convert-' + os.path.basename(self.path) + '-') |
@@ -91,6 +97,15 class darcs_source(converter_source, com | |||
|
91 | 97 | self.checkexit(fp.close()) |
|
92 | 98 | return etree.getroot() |
|
93 | 99 | |
|
100 | def format(self): | |
|
101 | output, status = self.run('show', 'repo', no_files=True, | |
|
102 | repodir=self.path) | |
|
103 | self.checkexit(status) | |
|
104 | m = re.search(r'^\s*Format:\s*(.*)$', output, re.MULTILINE) | |
|
105 | if not m: | |
|
106 | return None | |
|
107 | return ','.join(sorted(f.strip() for f in m.group(1).split(','))) | |
|
108 | ||
|
94 | 109 | def manifest(self): |
|
95 | 110 | man = [] |
|
96 | 111 | output, status = self.run('show', 'files', no_directories=True, |
@@ -486,9 +486,6 class httphandler(keepalive.HTTPHandler) | |||
|
486 | 486 | _generic_start_transaction(self, h, req) |
|
487 | 487 | return keepalive.HTTPHandler._start_transaction(self, h, req) |
|
488 | 488 | |
|
489 | def __del__(self): | |
|
490 | self.close_all() | |
|
491 | ||
|
492 | 489 | if has_https: |
|
493 | 490 | class BetterHTTPS(httplib.HTTPSConnection): |
|
494 | 491 | send = keepalive.safesend |
@@ -58,3 +58,30 list bookmarks | |||
|
58 | 58 | * test 1:8cf31af87a2b |
|
59 | 59 | * test2 1:8cf31af87a2b |
|
60 | 60 | |
|
61 | immediate rollback and reentrancy issue | |
|
62 | ||
|
63 | $ echo "mq=!" >> $HGRCPATH | |
|
64 | $ hg init repo | |
|
65 | $ cd repo | |
|
66 | $ echo a > a | |
|
67 | $ hg ci -Am adda | |
|
68 | adding a | |
|
69 | $ echo b > b | |
|
70 | $ hg ci -Am addb | |
|
71 | adding b | |
|
72 | $ hg bookmarks markb | |
|
73 | $ hg rollback | |
|
74 | rolling back to revision 0 (undo commit) | |
|
75 | ||
|
76 | are you there? | |
|
77 | ||
|
78 | $ hg bookmarks | |
|
79 | no bookmarks set | |
|
80 | ||
|
81 | can you be added again? | |
|
82 | ||
|
83 | $ hg bookmarks markb | |
|
84 | $ hg bookmarks | |
|
85 | * markb 0:07f494440405 | |
|
86 | $ cd .. | |
|
87 |
General Comments 0
You need to be logged in to leave comments.
Login now