Mercurial > hg
comparison tests/test-resolve.t @ 45518:32ce4cbaec4b
mergedriver: delete it
The merge driver code was added in late 2015. I think
'406a654b::6f045b56 & user("sid0")' is a reasonable revset for finding
the relevant commits, including preparation for it. The code is very
poorly tested, which makes it very hard to maintain. It seems it's
only used by FB and they don't use this code base anymore, so let's
remove the code to make it easier for us to maintain our product.
Differential Revision: https://phab.mercurial-scm.org/D9041
author | Martin von Zweigbergk <martinvonz@google.com> |
---|---|
date | Thu, 17 Sep 2020 22:34:36 -0700 |
parents | 766797f23f77 |
children | 21733e8c924f |
comparison
equal
deleted
inserted
replaced
45517:2a68a5ec8dd0 | 45518:32ce4cbaec4b |
---|---|
84 | 84 |
85 cleanup | 85 cleanup |
86 $ hg resolve -u | 86 $ hg resolve -u |
87 $ cd .. | 87 $ cd .. |
88 $ rmdir nested | 88 $ rmdir nested |
89 | |
90 don't allow marking or unmarking driver-resolved files | |
91 | |
92 $ cat > $TESTTMP/markdriver.py << EOF | |
93 > '''mark and unmark files as driver-resolved''' | |
94 > from mercurial import ( | |
95 > mergestate, | |
96 > pycompat, | |
97 > registrar, | |
98 > scmutil, | |
99 > ) | |
100 > cmdtable = {} | |
101 > command = registrar.command(cmdtable) | |
102 > @command(b'markdriver', | |
103 > [(b'u', b'unmark', None, b'')], | |
104 > b'FILE...') | |
105 > def markdriver(ui, repo, *pats, **opts): | |
106 > wlock = repo.wlock() | |
107 > opts = pycompat.byteskwargs(opts) | |
108 > try: | |
109 > ms = mergestate.mergestate.read(repo) | |
110 > m = scmutil.match(repo[None], pats, opts) | |
111 > for f in ms: | |
112 > if not m(f): | |
113 > continue | |
114 > if not opts[b'unmark']: | |
115 > ms.mark(f, b'd') | |
116 > else: | |
117 > ms.mark(f, b'u') | |
118 > ms.commit() | |
119 > finally: | |
120 > wlock.release() | |
121 > EOF | |
122 $ hg --config extensions.markdriver=$TESTTMP/markdriver.py markdriver file1 | |
123 $ hg resolve --list | |
124 D file1 | |
125 U file2 | |
126 $ hg resolve --mark file1 | |
127 not marking file1 as it is driver-resolved | |
128 this should not print out file1 | |
129 $ hg resolve --mark --all | |
130 (no more unresolved files -- run "hg resolve --all" to conclude) | |
131 $ hg resolve --mark 'glob:file*' | |
132 (no more unresolved files -- run "hg resolve --all" to conclude) | |
133 $ hg resolve --list | |
134 D file1 | |
135 R file2 | |
136 $ hg resolve --unmark file1 | |
137 not unmarking file1 as it is driver-resolved | |
138 (no more unresolved files -- run "hg resolve --all" to conclude) | |
139 $ hg resolve --unmark --all | |
140 $ hg resolve --list | |
141 D file1 | |
142 U file2 | |
143 $ hg --config extensions.markdriver=$TESTTMP/markdriver.py markdriver --unmark file1 | |
144 $ hg resolve --list | |
145 U file1 | |
146 U file2 | |
147 | 89 |
148 resolve the failure | 90 resolve the failure |
149 | 91 |
150 $ echo resolved > file1 | 92 $ echo resolved > file1 |
151 $ hg resolve -m file1 | 93 $ hg resolve -m file1 |