git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCH 08/11] Improve section "Merging multiple trees"

From
Thomas Ackermann <th.acker@arcor.de>
Date
Aug 27, 2013, 18:03 UTC
Message-ID
<1931551541.34581.1377626589383.JavaMail.ngmail@webmail19.arcor-online.net>
In-Reply-To
<1403569571.34349.1377625974290.JavaMail.ngmail@webmail19.arcor-online.net>

Remove unnecessary quoting. Simplify description of three-way merge.

Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>
Signed-off-by: Thomas Ackermann <th.acker@arcor.de>
---
 Documentation/user-manual.txt | 27 +++++++++++++--------------
 1 file changed, 13 insertions(+), 14 deletions(-)
diff --git a/Documentation/user-manual.txt b/Documentation/user-manual.txt
index c20e8df..a7ca3e3 100644
--- a/Documentation/user-manual.txt
+++ b/Documentation/user-manual.txt
@@ -4004,27 +4004,26 @@ to see what the top commit was.
 Merging multiple trees
 ----------------------
 
-Git helps you do a three-way merge, which you can expand to n-way by
-repeating the merge procedure arbitrary times until you finally
-"commit" the state.  The normal situation is that you'd only do one
-three-way merge (two parents), and commit it, but if you like to, you
-can do multiple parents in one go.
+Git can help you perform a three-way merge, which can in turn be
+used for a many-way merge by repeating the merge procedure several
+times.  The usual situation is that you only do one three-way merge
+(reconciling two lines of history) and commit the result, but if
+you like to, you can merge several branches in one go.
 
-To do a three-way merge, you need the two sets of "commit" objects
-that you want to merge, use those to find the closest common parent (a
-third "commit" object), and then use those commit objects to find the
-state of the directory ("tree" object) at these points.
+To perform a three-way merge, you start with the two commits you
+want to merge, find their closest common parent (a third commit),
+and compare the trees corresponding to these three commits.
 
-To get the "base" for the merge, you first look up the common parent
-of two commits with
+To get the "base" for the merge, look up the common parent of two
+commits:
 
 -------------------------------------------------
 $ git merge-base <commit1> <commit2>
 -------------------------------------------------
 
-which will return you the commit they are both based on.  You should
-now look up the "tree" objects of those commits, which you can easily
-do with (for example)
+This prints the name of a commit they are both based on. You should
+now look up the tree objects of those commits, which you can easily
+do with
 
 -------------------------------------------------
 $ git cat-file commit <commitname> | head -1
-- 
1.8.3.msysgit.0


---
Thomas
Previous: Junio C HamanoNext: Junio C Hamano
Message 22 of 28 in “Modernize user-manual”
  1. 0/11 Modernize user-manualThomas Ackermann, Aug 27, 2013
  2. 01/11 Call it "Git User Manual" and remove reference to very old Git versionThomas Ackermann, Aug 27, 2013
  3. Junio C HamanoAug 27, 2013
  4. Lars Gullik BjønnesAug 27, 2013
  5. Junio C HamanoAug 29, 2013
  6. 02/11 Use current "detached HEAD" messageThomas Ackermann, Aug 27, 2013
  7. Junio C HamanoAug 29, 2013
  8. 03/11 Use current output for "git repack"Thomas Ackermann, Aug 27, 2013
  9. Junio C HamanoAug 29, 2013
  10. 04/11 Use "git merge" instead of "git pull ."Thomas Ackermann, Aug 27, 2013
  11. Junio C HamanoAug 27, 2013
  12. Jonathan NiederAug 27, 2013
  13. Junio C HamanoAug 27, 2013
  14. 05/11 Fix some typos and improve wordingThomas Ackermann, Aug 27, 2013
  15. Junio C HamanoAug 27, 2013
  16. Junio C HamanoAug 29, 2013
  17. 06/11 Simplify "How to make a commit"Thomas Ackermann, Aug 27, 2013
  18. Junio C HamanoAug 27, 2013
  19. Junio C HamanoAug 29, 2013
  20. 07/11 Improve section "Manipulating branches"Thomas Ackermann, Aug 27, 2013
  21. Junio C HamanoAug 27, 2013
  22. 08/11 Improve section "Merging multiple trees"Thomas Ackermann, Aug 27, 2013
  23. Junio C HamanoAug 27, 2013
  24. 09/11 Remove unnecessary historical note from "Object storage format"Thomas Ackermann, Aug 27, 2013
  25. Junio C HamanoAug 27, 2013
  26. 10/11 Remove irrelevant reference from "Tying it all together"Thomas Ackermann, Aug 27, 2013
  27. 11/11 "git prune" is safeThomas Ackermann, Aug 27, 2013
  28. Junio C HamanoAug 27, 2013

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.