Mercurial > hg
view tests/test-double-merge.t @ 37811:51dee6fad783 stable
infinitepush: ensure fileindex bookmarks use '/' separators (issue5840)
After loading up with status messages, I noticed that the subsequent matcher was
rejecting 'scratch\mybranch' on Windows. No bookmarks were reported back, and
the tests subsequently failed. I did a search for 'match', and nothing else
looks like it needs to be fixed up, but someone who understands this code should
also take a look.
I also tried setting `infinitepush.branchpattern=re:scratch\\.*` in
library-infinitepush.sh without this change, but that didn't work. Still,
should we ban '\' in these bookmarks to avoid confusion? I thought I saw code
that sandwiches a pattern between 're:^' and '.*', so perhaps regex characters
will need special care?
I also noticed comments in externalbundlestore.{read,write} that it won't work
on Windows because of opening an open file. But I don't see a test failure, so
this may lack test coverage.
author | Matt Harbison <matt_harbison@yahoo.com> |
---|---|
date | Mon, 23 Apr 2018 23:22:52 -0400 |
parents | 564a354f7f35 |
children | 91a0bc50b288 |
line wrap: on
line source
$ hg init repo $ cd repo $ echo line 1 > foo $ hg ci -qAm 'add foo' copy foo to bar and change both files $ hg cp foo bar $ echo line 2-1 >> foo $ echo line 2-2 >> bar $ hg ci -m 'cp foo bar; change both' in another branch, change foo in a way that doesn't conflict with the other changes $ hg up -qC 0 $ echo line 0 > foo $ hg cat foo >> foo $ hg ci -m 'change foo' created new head we get conflicts that shouldn't be there $ hg merge -P changeset: 1:484bf6903104 user: test date: Thu Jan 01 00:00:00 1970 +0000 summary: cp foo bar; change both $ hg merge --debug searching for copies back to rev 1 unmatched files in other: bar all copies found (* = to merge, ! = divergent, % = renamed and deleted): src: 'foo' -> dst: 'bar' * checking for directory renames resolving manifests branchmerge: True, force: False, partial: False ancestor: e6dc8efe11cc, local: 6a0df1dad128+, remote: 484bf6903104 preserving foo for resolve of bar preserving foo for resolve of foo starting 4 threads for background file closing (?) bar: remote copied from foo -> m (premerge) picked tool ':merge' for bar (binary False symlink False changedelete False) merging foo and bar to bar my bar@6a0df1dad128+ other bar@484bf6903104 ancestor foo@e6dc8efe11cc premerge successful foo: versions differ -> m (premerge) picked tool ':merge' for foo (binary False symlink False changedelete False) merging foo my foo@6a0df1dad128+ other foo@484bf6903104 ancestor foo@e6dc8efe11cc premerge successful 0 files updated, 2 files merged, 0 files removed, 0 files unresolved (branch merge, don't forget to commit) contents of foo $ cat foo line 0 line 1 line 2-1 contents of bar $ cat bar line 0 line 1 line 2-2 $ cd ..