Re: Re: [PATCH 09/13] Improve section "Merge multiple trees"

2013-08-25 Thread Jonathan Nieder
Thomas Ackermann wrote:

>> Maybe the intent is
>>
>>  Git can help you perform a three-way merge, which can in turn be
[...]
> If you don't mind I will use your text

No problem.
Signed-off-by: Jonathan Nieder 
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Aw: Re: [PATCH 09/13] Improve section "Merge multiple trees"

2013-08-25 Thread Thomas Ackermann
> 
> Maybe the intent is
> 
>   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 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, look up the common parent of two
>   commits:
> 
>   $ git merge-base  
> 
>   This prints the name of a commit they are both based on.
>   ...
> 

Thanks! Your text is much better than the original one (and my small changes 
didn't
even try to improve the text per se). 
If you don't mind I will use your text and add your sign-off for this patch.



---
Thomas
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH 09/13] Improve section "Merge multiple trees"

2013-08-24 Thread Jonathan Nieder
Thomas Ackermann wrote:

> --- a/Documentation/user-manual.txt
> +++ b/Documentation/user-manual.txt
> @@ -3992,16 +3992,16 @@ 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.
> +commit the state.

The above sentence is unclear to me both before and after this change.

Git helps me do a three-way merge, but I'm on my own if I want to
expand to n-way?  Those times I repeat it are arbitrary times, not
arbitrarily many times?  Using "git merge" I make commits, but I
do not finally commit to the result until the (n-1)st?  And what is
this state I am committing?

Maybe the intent is

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 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, look up the common parent of two
commits:

$ git merge-base  

This prints the name of a commit they are both based on.
...

[...]
> -To get the "base" for the merge, you first look up the common parent
> +To get the base for the merge, you first look up the common parent

Merge base hasn't been defined, so this is using quotes to point out
that it is defining a new, unfamiliar term.

[...]
> -now look up the "tree" objects of those commits, which you can easily
> -do with (for example)
> +now look up the tree objects of those commits, which you can easily
> +do with

Yes.
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[PATCH 09/13] Improve section "Merge multiple trees"

2013-08-24 Thread Thomas Ackermann

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

Signed-off-by: Thomas Ackermann 
---
 Documentation/user-manual.txt | 14 +++---
 1 file changed, 7 insertions(+), 7 deletions(-)

diff --git a/Documentation/user-manual.txt b/Documentation/user-manual.txt
index d5baf03..f713f26 100644
--- a/Documentation/user-manual.txt
+++ b/Documentation/user-manual.txt
@@ -3992,16 +3992,16 @@ 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
+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.
 
-To do a three-way merge, you need the two sets of "commit" objects
+To do a three-way merge, you need the two 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.
+third commit object: the merge base), and then use those commit objects to 
find the
+state of the directory (i.e. tree object) at these points.
 
-To get the "base" for the merge, you first look up the common parent
+To get the base for the merge, you first look up the common parent
 of two commits with
 
 -
@@ -4009,8 +4009,8 @@ $ git merge-base  
 -
 
 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)
+now look up the tree objects of those commits, which you can easily
+do with
 
 -
 $ git cat-file commit  | head -1
-- 
1.8.3.msysgit.0


---
Thomas
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html