175 $ cat > .hg/hgrc <<EOF |
163 $ cat > .hg/hgrc <<EOF |
176 > [extensions] |
164 > [extensions] |
177 > eol = |
165 > eol = |
178 > EOF |
166 > EOF |
179 |
167 |
180 Update to revision 0 which has no .hgeol . Unfortunately, it uses the filter |
168 Update to revision 0 which has no .hgeol, shouldn't use any filters, and |
181 from tip ... which evidently is wrong: |
169 obviously should leave things as tidy as they were before the clean update. |
182 |
170 |
183 $ hg up -c -r 0 -v --debug |
171 $ hg up -c -r 0 -v --debug |
184 resolving manifests |
172 resolving manifests |
185 branchmerge: False, force: False, partial: False |
173 branchmerge: False, force: False, partial: False |
186 ancestor: 000000000000, local: 000000000000+, remote: 15cbdf8ca3db |
174 ancestor: 000000000000, local: 000000000000+, remote: 15cbdf8ca3db |
191 a.txt: remote created -> g |
179 a.txt: remote created -> g |
192 getting a.txt |
180 getting a.txt |
193 filtering a.txt through tolf |
181 filtering a.txt through tolf |
194 f: remote created -> g |
182 f: remote created -> g |
195 getting f |
183 getting f |
196 filtering f through tolf |
|
197 3 files updated, 0 files merged, 0 files removed, 0 files unresolved |
184 3 files updated, 0 files merged, 0 files removed, 0 files unresolved |
198 $ hg st |
185 $ hg st |
199 M f |
|
200 $ touch .hgeol * # ensure consistent dirtyness checks ignoring dirstate |
|
201 $ hg up -C -r 0 -v --debug |
|
202 eol: detected change in .hgeol |
|
203 filtering .hgeol through isbinary |
|
204 filtering a.txt through tolf |
|
205 resolving manifests |
|
206 branchmerge: False, force: True, partial: False |
|
207 ancestor: 15cbdf8ca3db+, local: 15cbdf8ca3db+, remote: 15cbdf8ca3db |
|
208 calling hook preupdate.eol: hgext.eol.preupdate |
|
209 f: remote is newer -> g |
|
210 getting f |
|
211 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
|
212 |
186 |
213 $ hg branch b |
187 $ hg branch b |
214 marked working directory as branch b |
188 marked working directory as branch b |
215 (branches are permanent and global, did you want a bookmark?) |
189 (branches are permanent and global, did you want a bookmark?) |
216 $ hg ci -m b |
190 $ hg ci -m b |
248 +++ b/f |
222 +++ b/f |
249 @@ -1,1 +1,1 @@ |
223 @@ -1,1 +1,1 @@ |
250 -f\r (esc) |
224 -f\r (esc) |
251 +f |
225 +f |
252 |
226 |
253 Abort the merge with up -C to revision 0 ... but notice how .hgeol changes are |
227 Abort the merge with up -C to revision 0. |
254 not detected correctly: f is filtered with tolf even though there is no filter |
228 Note that files are filtered correctly for revision 0: f is not filtered, a.txt |
255 for f in revision 0, and it thus ends up with working directory changes. |
229 is filtered with tolf, and everything is left tidy. |
256 |
230 |
257 $ touch .hgeol * # ensure consistent dirtyness checks ignoring dirstate |
231 $ touch .hgeol * # ensure consistent dirtyness checks ignoring dirstate |
258 $ hg up -C -r 0 -v --debug |
232 $ hg up -C -r 0 -v --debug |
259 eol: detected change in .hgeol |
233 eol: detected change in .hgeol |
260 resolving manifests |
234 resolving manifests |
267 a.txt: remote is newer -> g |
241 a.txt: remote is newer -> g |
268 getting a.txt |
242 getting a.txt |
269 filtering a.txt through tolf |
243 filtering a.txt through tolf |
270 f: remote is newer -> g |
244 f: remote is newer -> g |
271 getting f |
245 getting f |
272 filtering f through tolf |
|
273 3 files updated, 0 files merged, 0 files removed, 0 files unresolved |
246 3 files updated, 0 files merged, 0 files removed, 0 files unresolved |
274 |
247 |
275 $ touch .hgeol * |
248 $ touch .hgeol * |
276 $ hg st --debug |
249 $ hg st --debug |
277 eol: detected change in .hgeol |
250 eol: detected change in .hgeol |
278 filtering .hgeol through isbinary |
251 filtering .hgeol through isbinary |
279 filtering a.txt through tolf |
252 filtering a.txt through tolf |
280 M f |
|
281 $ hg diff |
253 $ hg diff |
282 diff --git a/f b/f |
254 |
283 --- a/f |
255 Things were clean, and updating again will not change anything: |
284 +++ b/f |
|
285 @@ -1,1 +1,1 @@ |
|
286 -f\r (esc) |
|
287 +f |
|
288 |
|
289 Workaround: Update again - this will read the right .hgeol: |
|
290 |
256 |
291 $ touch .hgeol * |
257 $ touch .hgeol * |
292 $ hg up -C -r 0 -v --debug |
258 $ hg up -C -r 0 -v --debug |
293 eol: detected change in .hgeol |
259 eol: detected change in .hgeol |
294 filtering .hgeol through isbinary |
260 filtering .hgeol through isbinary |
295 filtering a.txt through tolf |
261 filtering a.txt through tolf |
296 resolving manifests |
262 resolving manifests |
297 branchmerge: False, force: True, partial: False |
263 branchmerge: False, force: True, partial: False |
298 ancestor: 15cbdf8ca3db+, local: 15cbdf8ca3db+, remote: 15cbdf8ca3db |
264 ancestor: 15cbdf8ca3db+, local: 15cbdf8ca3db+, remote: 15cbdf8ca3db |
299 calling hook preupdate.eol: hgext.eol.preupdate |
265 calling hook preupdate.eol: hgext.eol.preupdate |
300 f: remote is newer -> g |
266 0 files updated, 0 files merged, 0 files removed, 0 files unresolved |
301 getting f |
|
302 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
|
303 |
267 |
304 $ touch .hgeol * |
268 $ touch .hgeol * |
305 $ hg st --debug |
269 $ hg st --debug |
306 eol: detected change in .hgeol |
270 eol: detected change in .hgeol |
307 filtering .hgeol through isbinary |
271 filtering .hgeol through isbinary |