README.md 3.05 KB
Newer Older
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 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104

About Meld
==========

Meld is a visual diff and merge tool targeted at developers. Meld helps you
compare files, directories, and version controlled projects. It provides
two- and three-way comparison of both files and directories, and supports
many version control systems including Git, Mercurial, Bazaar and Subversion.

Meld helps you review code changes, understand patches, and makes enormous
merge conflicts slightly less painful.

Meld is licensed under the GPL v2 or later.


Requirements
------------

* Python 3.4
* pycairo (Python3 bindings for cairo without GObject layer)
* PyGObject 3.20 (Python3 bindings for GObject introspection)
* gsettings-desktop-schemas

And following packages with GObject introspection:

* GLib 2.36 (meld install also needs GLib binaries like glib-compile-schemas)
* Pango
* PangoCairo
* GTK+ 3.20
* GtkSourceView 3.20


Build requirements
------------------

* intltool
* itstool
* xmllint

Building Windows MSIs requires:

* cx_Freeze 5
* pywin32/pypiwin32 (optional, for storing version info in Meld.exe)

Running
-------

Meld can be run directly from this source tree directory. Just type:

 * `bin/meld`

Alternatively, you can install Meld system-wide by running:

 * `python3 setup.py install`

or if you're on Ubuntu, instead try:

 * `python3 setup.py install --prefix=/usr`

...but you should probably just get a RPM/deb/installer instead, depending on
your system. Meld packages are available for just about every \*nix
distribution.

For Windows users, MSIs are available from the Meld home page. Also if all
dependencies are installed manually, running from source tree is supported:
 * `python3.exe bin/meld`

For OSX users, Meld can be installed on OSX using MacPorts/Fink/etc. There are
also unofficial native builds available for older releases. See the wiki for
details.


Building
--------

Meld uses standard distutils for building. It supports anything that distutils
supports, and little else.

Additional hacks are added to make life easier for packagers where required,
such as:

* Passing `--no-update-icon-cache` will stop Meld from running
  `gtk-update-icon-cache` post-install
* Passing `--no-compile-schemas` will stop Meld from trying to compile
  gsettings schemas post-install

These arguments need to be passed to `setup.py` itself, *not* to the install
command. In other words, do this:

    python3 setup.py --no-compile-schemas install

**not** this:

    python3 setup.py install --no-compile-schemas

Windows installer can be built with command

    C:\Python34\python.exe setup_win32.py bdist_msi

that creates file `dist/Meld-VERSION-ARCH.msi`

Contributing
------------

105
Meld uses GNOME's GitLab to track bugs, and user questions and development
106 107 108
discussions happen on the Meld mailing list. The development team is small,
and new contributors are always welcome!

109
List of issues: https://gitlab.gnome.org/GNOME/meld/issues
110 111 112 113 114 115 116 117 118 119 120 121 122

Mailing list:   https://mail.gnome.org/mailman/listinfo/meld-list



Links
-----

Home page:      http://meldmerge.org

Documentation:  http://meldmerge.org/help

Wiki:           https://wiki.gnome.org/Apps/Meld