eol: exclude .hgtags file from eol translation (issue2493) stable
authorColin Caughie <c.caughie@indigovision.com>
Sat, 13 Nov 2010 15:02:02 +0100
branchstable
changeset 12974 75e4fade4ad9
parent 12972 7916a84c0758
child 12976 793563fd88c0
child 12980 20974e51383a
eol: exclude .hgtags file from eol translation (issue2493)
hgext/eol.py
tests/test-eol-tag.t
--- a/hgext/eol.py	Thu Nov 11 02:10:37 2010 +0900
+++ b/hgext/eol.py	Sat Nov 13 15:02:02 2010 +0100
@@ -176,6 +176,10 @@
                 self._decode['NATIVE'] = 'to-crlf'
 
             eol = config.config()
+            # Our files should not be touched. The pattern must be
+            # inserted first override a '** = native' pattern.
+            eol.set('patterns', '.hg*', 'BIN')
+            # We can then parse the user's patterns.
             eol.parse('.hgeol', data)
 
             if eol.get('repository', 'native') == 'CRLF':
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/tests/test-eol-tag.t	Sat Nov 13 15:02:02 2010 +0100
@@ -0,0 +1,40 @@
+http://mercurial.selenic.com/bts/issue2493
+
+Testing tagging with the EOL extension
+
+  $ cat > $HGRCPATH <<EOF
+  > [diff]
+  > git = True
+  > 
+  > [extensions]
+  > eol =
+  > 
+  > [eol]
+  > native = CRLF
+  > EOF
+
+setup repository
+
+  $ hg init repo
+  $ cd repo
+  $ cat > .hgeol <<EOF
+  > [patterns]
+  > ** = native
+  > EOF
+  $ printf "first\r\nsecond\r\nthird\r\n" > a.txt
+  $ hg commit --addremove -m 'checkin'
+  adding .hgeol
+  adding a.txt
+
+Tag:
+
+  $ hg tag 1.0
+
+Rewrite .hgtags file as it would look on a new checkout:
+
+  $ hg update -q null
+  $ hg update -q
+
+Touch .hgtags file again:
+
+  $ hg tag 2.0