Don't report markup titles as merge conflicts

Several markup formats, such as Markdown or Re(Structured)Text
can format titles as text with '=' characters as double underlining,
like this:
```
My Page Title
=============

Lorem ipsum...
```

Rather that considering any line starting with seven '=' as a conflict marker,
require a space (or line-ending newline) after the equals.
This could still create a false positive for a seven character title,
like "Problem", but the markup formats generally allow extra '=' characters,
so by formatting the text like this:
```
Problem
========

Not...
```
these pre-commit warnings can be avoided.

Also updates the tests to add newlines for more realistic conflict files
(while a file might not end with a newline, conflict markers will).
Prevent false negative on test_does_not_care_when_not_in_a_conflict()
by making sure that README.md contains a line identical to a conflict string
(exactly seven '=' followed by a newline).
This commit is contained in:
Alexander Dupuy 2015-05-07 18:20:42 +02:00 committed by Alexander Dupuy
parent cedcea550c
commit eefc46f901
2 changed files with 5 additions and 4 deletions

View file

@ -6,7 +6,8 @@ import sys
CONFLICT_PATTERNS = [
'<<<<<<< ',
'=======',
'======= ',
'=======\n',
'>>>>>>> '
]
WARNING_MSG = 'Merge conflict string "{0}" found in {1}:{2}'