2013-05-01 09:25:12 +04:00
|
|
|
==================================================
|
|
|
|
git-imerge -- incremental merge and rebase for git
|
|
|
|
==================================================
|
2012-12-28 02:27:00 +04:00
|
|
|
|
2013-05-01 09:25:12 +04:00
|
|
|
git-imerge is an experimental tool to help in various ways with
|
2012-12-28 02:27:00 +04:00
|
|
|
difficult git merges. See `my blog`_ for more information.
|
|
|
|
|
|
|
|
**This tool is experimental! If it breaks, you get to keep the
|
|
|
|
pieces. For example, it is strongly recommended that you make a clone
|
|
|
|
of your git repository and run the script on the clone rather than the
|
|
|
|
original.**
|
|
|
|
|
2013-05-01 09:25:12 +04:00
|
|
|
git-imerge is under the GNU General Public License (GPL), version 2 or
|
|
|
|
later.
|
2012-12-28 02:43:15 +04:00
|
|
|
|
2012-12-28 02:27:00 +04:00
|
|
|
Usage::
|
2013-01-20 11:45:37 +04:00
|
|
|
|
2013-05-01 09:25:12 +04:00
|
|
|
git-imerge --help
|
2012-12-28 02:27:00 +04:00
|
|
|
|
|
|
|
Output this message.
|
|
|
|
|
2013-05-01 09:25:12 +04:00
|
|
|
git-imerge diagram [--full] BRANCH1...BRANCH2 >diagram.ppm
|
2012-12-28 02:27:00 +04:00
|
|
|
|
|
|
|
Determine which pairs of commits from the two branchs can be
|
|
|
|
merged together without conflict. Output the result as a
|
|
|
|
PPM-formatted image, where successful merges are shown as
|
2013-01-20 11:43:53 +04:00
|
|
|
green pixels and unsuccessful merges as red pixels.
|
2012-12-28 02:27:00 +04:00
|
|
|
|
2013-05-01 09:25:12 +04:00
|
|
|
git-imerge reparent [PARENT...]
|
2012-12-28 02:27:00 +04:00
|
|
|
|
2013-05-01 09:25:12 +04:00
|
|
|
Change the parents of the HEAD commit to the specified list.
|
|
|
|
Write the name of the new commit object to stdout without
|
|
|
|
actually pointing HEAD at it.
|
2012-12-28 02:27:00 +04:00
|
|
|
|
2013-05-01 09:25:12 +04:00
|
|
|
In all cases, only the --first-parent commits are considered for
|
|
|
|
merging, and git rerere is disabled.
|
2012-12-28 02:27:00 +04:00
|
|
|
|
|
|
|
|
2013-05-01 09:25:12 +04:00
|
|
|
Definitions
|
|
|
|
===========
|
2012-12-28 02:27:00 +04:00
|
|
|
|
2013-05-01 09:25:12 +04:00
|
|
|
``rebase-with-history``
|
|
|
|
Merge the commits from BRANCH into HEAD, one commit at a time. In
|
|
|
|
other words, transform this::
|
2012-12-28 02:27:00 +04:00
|
|
|
|
2013-05-01 09:25:12 +04:00
|
|
|
o---o---o---o HEAD
|
|
|
|
\
|
|
|
|
A---B---C---D BRANCH
|
2012-12-28 02:27:00 +04:00
|
|
|
|
2013-05-01 09:25:12 +04:00
|
|
|
into this::
|
2012-12-28 02:27:00 +04:00
|
|
|
|
2013-05-01 09:25:12 +04:00
|
|
|
o---o---o---o---A'--B'--C'--D' HEAD
|
|
|
|
\ / / / /
|
|
|
|
--------A---B---C---D BRANCH
|
2012-12-28 02:27:00 +04:00
|
|
|
|
2013-05-01 09:25:12 +04:00
|
|
|
This is like a rebase, except that the history of individual
|
|
|
|
merges is retained. See `my blog`_ for more information.
|
2012-12-28 02:27:00 +04:00
|
|
|
|
|
|
|
|
|
|
|
.. _`my blog`: http://softwareswirl.blogspot.de/
|
|
|
|
|