File: README.rst

package info (click to toggle)
python-merge3 0.0.8-1
  • links: PTS, VCS
  • area: main
  • in suites: bookworm, bullseye, forky, sid, trixie
  • size: 976 kB
  • sloc: python: 773; makefile: 2
file content (26 lines) | stat: -rw-r--r-- 716 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
A Python implementation of 3-way merge of texts.

Given BASE, OTHER, THIS, tries to produce a combined text
incorporating the changes from both BASE->OTHER and BASE->THIS.
All three will typically be sequences of lines.

Usage
=====

From the command-line::

    $ echo foo > mine
    $ echo bar > base
    $ echo blah > other
    $ python -m merge3 mine base other > merged
    $ cat merged

Or from Python::

    >>> import merge3
    >>> m3 = merge3.Merge3(
    ...                    ['common\n', 'base\n'],
    ...                    ['common\n', 'a\n'],
    ...                    ['common\n', 'b\n'])
    >>> list(m3.merge_annotated())
    ['u | common\n', '<<<<\n', 'A | a\n', '----\n', 'B | b\n', '>>>>\n']