Mercurial > hg
view tests/test-convert-svn-sink.out @ 8810:ac92775b3b80
Add patch.eol to ignore EOLs when patching (issue1019)
The intent is to fix many issues involving patching when win32ext is enabled.
With win32ext, the working directory and repository files EOLs are not the same
which means that patches made on a non-win32ext host do not apply cleanly
because of EOLs discrepancies. A theorically correct approach would be
transform either the patched file or the patch content with the
encoding/decoding filters used by win32ext. This solution is tricky to
implement and invasive, instead we prefer to address the win32ext case, by
offering a way to ignore input EOLs when patching and rewriting them when
saving the patched result.
author | Patrick Mezard <pmezard@gmail.com> |
---|---|
date | Mon, 15 Jun 2009 00:03:26 +0200 |
parents | 99e5f97c9a97 |
children | b2310903c462 |
line wrap: on
line source
% add adding a adding d1/d2/b % modify 1:e0e2b8a9156b assuming destination a-hg initializing svn repo 'a-hg' initializing svn wc 'a-hg-wc' scanning source... sorting... converting... 1 add a file 0 modify a file At revision 2. 2 2 test . 2 2 test a 2 1 test d1 2 1 test d1/d2 2 1 test d1/d2/b <?xml version="1.0"?> <log> <logentry revision="2"> <author>test</author> <date/> <paths> <path action="M">/a</path> </paths> <msg>modify a file</msg> </logentry> <logentry revision="1"> <author>test</author> <date/> <paths> <path action="A">/a</path> <path action="A">/d1</path> <path action="A">/d1/d2</path> <path action="A">/d1/d2/b</path> </paths> <msg>add a file</msg> </logentry> </log> a: a d1 a-hg-wc: a d1 same % rename 2:7009fc4efb34 assuming destination a-hg initializing svn wc 'a-hg-wc' scanning source... sorting... converting... 0 rename a file At revision 3. 3 3 test . 3 3 test b 3 1 test d1 3 1 test d1/d2 3 1 test d1/d2/b <?xml version="1.0"?> <log> <logentry revision="3"> <author>test</author> <date/> <paths> <path action="D">/a</path> <path copyfrom-path="/a" copyfrom-rev="2" action="A">/b</path> </paths> <msg>rename a file</msg> </logentry> </log> a: b d1 a-hg-wc: b d1 % copy 3:56c519973ce6 assuming destination a-hg initializing svn wc 'a-hg-wc' scanning source... sorting... converting... 0 copy a file At revision 4. 4 4 test . 4 3 test b 4 4 test c 4 1 test d1 4 1 test d1/d2 4 1 test d1/d2/b <?xml version="1.0"?> <log> <logentry revision="4"> <author>test</author> <date/> <paths> <path copyfrom-path="/b" copyfrom-rev="3" action="A">/c</path> </paths> <msg>copy a file</msg> </logentry> </log> a: b c d1 a-hg-wc: b c d1 % remove 4:ed4dc9a6f585 assuming destination a-hg initializing svn wc 'a-hg-wc' scanning source... sorting... converting... 0 remove a file At revision 5. 5 5 test . 5 4 test c 5 1 test d1 5 1 test d1/d2 5 1 test d1/d2/b <?xml version="1.0"?> <log> <logentry revision="5"> <author>test</author> <date/> <paths> <path action="D">/b</path> </paths> <msg>remove a file</msg> </logentry> </log> a: c d1 a-hg-wc: c d1 % executable 5:f205b3636d77 assuming destination a-hg initializing svn wc 'a-hg-wc' scanning source... sorting... converting... 0 make a file executable At revision 6. 6 6 test . 6 6 test c 6 1 test d1 6 1 test d1/d2 6 1 test d1/d2/b <?xml version="1.0"?> <log> <logentry revision="6"> <author>test</author> <date/> <paths> <path action="M">/c</path> </paths> <msg>make a file executable</msg> </logentry> </log> executable % executable in new directory adding d1/a assuming destination a-hg initializing svn repo 'a-hg' initializing svn wc 'a-hg-wc' scanning source... sorting... converting... 0 add executable file in new directory At revision 1. 1 1 test . 1 1 test d1 1 1 test d1/a <?xml version="1.0"?> <log> <logentry revision="1"> <author>test</author> <date/> <paths> <path action="A">/d1</path> <path action="A">/d1/a</path> </paths> <msg>add executable file in new directory</msg> </logentry> </log> executable % copy to new directory assuming destination a-hg initializing svn wc 'a-hg-wc' scanning source... sorting... converting... 0 copy file to new directory At revision 2. 2 2 test . 2 1 test d1 2 1 test d1/a 2 2 test d2 2 2 test d2/a <?xml version="1.0"?> <log> <logentry revision="2"> <author>test</author> <date/> <paths> <path action="A">/d2</path> <path copyfrom-path="/d1/a" copyfrom-rev="1" action="A">/d2/a</path> </paths> <msg>copy file to new directory</msg> </logentry> </log> % branchy history adding b adding left-1 adding left-2 1 files updated, 0 files merged, 2 files removed, 0 files unresolved adding right-1 created new head adding right-2 3 files updated, 0 files merged, 2 files removed, 0 files unresolved merging b warning: conflicts during merge. merging b failed! 2 files updated, 0 files merged, 0 files removed, 1 files unresolved use 'hg resolve' to retry unresolved file merges or 'hg up --clean' to abandon assuming destination b-hg initializing svn repo 'b-hg' initializing svn wc 'b-hg-wc' scanning source... sorting... converting... 5 base 4 left-1 3 left-2 2 right-1 1 right-2 0 merge % expect 4 changes At revision 4. 4 4 test . 4 3 test b 4 2 test left-1 4 3 test left-2 4 4 test right-1 4 4 test right-2 <?xml version="1.0"?> <log> <logentry revision="4"> <author>test</author> <date/> <paths> <path action="A">/right-1</path> <path action="A">/right-2</path> </paths> <msg>merge</msg> </logentry> <logentry revision="3"> <author>test</author> <date/> <paths> <path action="M">/b</path> <path action="A">/left-2</path> </paths> <msg>left-2</msg> </logentry> <logentry revision="2"> <author>test</author> <date/> <paths> <path action="M">/b</path> <path action="A">/left-1</path> </paths> <msg>left-1</msg> </logentry> <logentry revision="1"> <author>test</author> <date/> <paths> <path action="A">/b</path> </paths> <msg>base</msg> </logentry> </log>