summaryrefslogtreecommitdiff
path: root/Documentation
diff options
context:
space:
mode:
authorLibravatar Jon Loeliger <jdl@freescale.com>2005-11-06 10:26:07 -0600
committerLibravatar Junio C Hamano <junkio@cox.net>2005-11-06 10:31:48 -0800
commitbb73d73c0885fce357e0d70aa51c2215a8e38a4e (patch)
treefef586ef93089ddb1088c003cb84cafa8ba3c81b /Documentation
parentDocument expat dependency when using http-push. (diff)
downloadtgif-bb73d73c0885fce357e0d70aa51c2215a8e38a4e.tar.xz
Refactor merge strategies into separate includable file.
Signed-off-by: Jon Loeliger <jdl@freescale.com> Signed-off-by: Junio C Hamano <junkio@cox.net>
Diffstat (limited to 'Documentation')
-rw-r--r--Documentation/git-merge.txt2
-rw-r--r--Documentation/git-pull.txt36
-rw-r--r--Documentation/merge-strategies.txt35
3 files changed, 38 insertions, 35 deletions
diff --git a/Documentation/git-merge.txt b/Documentation/git-merge.txt
index 3e058db996..b3ef19bae4 100644
--- a/Documentation/git-merge.txt
+++ b/Documentation/git-merge.txt
@@ -34,6 +34,8 @@ include::merge-pull-opts.txt[]
least one <remote>. Specifying more than one <remote>
obviously means you are trying an Octopus.
+include::merge-strategies.txt[]
+
SEE ALSO
--------
diff --git a/Documentation/git-pull.txt b/Documentation/git-pull.txt
index ec10a2f409..7ebb08da0c 100644
--- a/Documentation/git-pull.txt
+++ b/Documentation/git-pull.txt
@@ -31,42 +31,8 @@ include::pull-fetch-param.txt[]
include::merge-pull-opts.txt[]
+include::merge-strategies.txt[]
-MERGE STRATEGIES
-----------------
-
-resolve::
- This can only resolve two heads (i.e. the current branch
- and another branch you pulled from) using 3-way merge
- algorithm. It tries to carefully detect criss-cross
- merge ambiguities and is considered generally safe and
- fast. This is the default merge strategy when pulling
- one branch.
-
-recursive::
- This can only resolve two heads using 3-way merge
- algorithm. When there are more than one common
- ancestors that can be used for 3-way merge, it creates a
- merged tree of the common ancestores and uses that as
- the reference tree for the 3-way merge. This has been
- reported to result in fewer merge conflicts without
- causing mis-merges by tests done on actual merge commits
- taken from Linux 2.6 kernel development history.
- Additionally this can detect and handle merges involving
- renames.
-
-octopus::
- This resolves more than two-head case, but refuses to do
- complex merge that needs manual resolution. It is
- primarily meant to be used for bundling topic branch
- heads together. This is the default merge strategy when
- pulling more than one branch.
-
-ours::
- This resolves any number of heads, but the result of the
- merge is always the current branch head. It is meant to
- be used to supersede old development history of side
- branches.
EXAMPLES
diff --git a/Documentation/merge-strategies.txt b/Documentation/merge-strategies.txt
new file mode 100644
index 0000000000..3ec56d22eb
--- /dev/null
+++ b/Documentation/merge-strategies.txt
@@ -0,0 +1,35 @@
+MERGE STRATEGIES
+----------------
+
+resolve::
+ This can only resolve two heads (i.e. the current branch
+ and another branch you pulled from) using 3-way merge
+ algorithm. It tries to carefully detect criss-cross
+ merge ambiguities and is considered generally safe and
+ fast. This is the default merge strategy when pulling
+ one branch.
+
+recursive::
+ This can only resolve two heads using 3-way merge
+ algorithm. When there are more than one common
+ ancestors that can be used for 3-way merge, it creates a
+ merged tree of the common ancestores and uses that as
+ the reference tree for the 3-way merge. This has been
+ reported to result in fewer merge conflicts without
+ causing mis-merges by tests done on actual merge commits
+ taken from Linux 2.6 kernel development history.
+ Additionally this can detect and handle merges involving
+ renames.
+
+octopus::
+ This resolves more than two-head case, but refuses to do
+ complex merge that needs manual resolution. It is
+ primarily meant to be used for bundling topic branch
+ heads together. This is the default merge strategy when
+ pulling more than one branch.
+
+ours::
+ This resolves any number of heads, but the result of the
+ merge is always the current branch head. It is meant to
+ be used to supersede old development history of side
+ branches.