Mercurial > hg
view tests/test-custom-filters @ 7104:9514cbb6e4f6
bdiff: normalize the diff (issue1295)
When the common part of a diff can be moved forward, move it forward.
Otherwise we don't get deterministic results (it would depends on the way we
split for the recursion).
That way we get identical hunks when doing the same change, it helps to solve
issue1295 (inconsistent diffs on different side during a merge).
author | Benoit Boissinot <benoit.boissinot@ens-lyon.org> |
---|---|
date | Tue, 14 Oct 2008 20:13:53 +0200 |
parents | f3a8b5360100 |
children | a964ab624385 |
line wrap: on
line source
#!/bin/sh hg init cat > .hg/hgrc <<EOF [extensions] prefixfilter = prefix.py [encode] *.txt = stripprefix: Copyright 2046, The Masters [decode] *.txt = insertprefix: Copyright 2046, The Masters EOF cat > prefix.py <<EOF from mercurial import util def stripprefix(s, cmd, filename, **kwargs): header = '%s\n' % cmd if s[:len(header)] != header: raise util.Abort('missing header "%s" in %s' % (cmd, filename)) return s[len(header):] def insertprefix(s, cmd): return '%s\n%s' % (cmd, s) def reposetup(ui, repo): repo.adddatafilter('stripprefix:', stripprefix) repo.adddatafilter('insertprefix:', insertprefix) EOF cat > .hgignore <<EOF .hgignore prefix.py prefix.pyc EOF cat > stuff.txt <<EOF Copyright 2046, The Masters Some stuff to ponder very carefully. EOF hg add stuff.txt hg ci -m stuff echo '% Repository data:' hg cat stuff.txt echo '% Fresh checkout:' rm stuff.txt hg up cat stuff.txt echo >> stuff.txt <<EOF Very very carefully. EOF hg stat cat > morestuff.txt <<EOF Unauthorized material subject to destruction. EOF echo '% Problem encoding:' hg add morestuff.txt hg ci -m morestuff hg stat