From: "Santi Béjar" <santi@agolina.net>
To: Pascal Obry <pascal@obry.net>
Cc: Git Mailing List <git@vger.kernel.org>
Subject: Re: Finding the name of the parent branch?
Date: Fri, 30 Jan 2009 14:16:50 +0100 [thread overview]
Message-ID: <adf1fd3d0901300516y3d1bf58dmda9c5172586d828@mail.gmail.com> (raw)
In-Reply-To: <a2633edd0901300456y48e8d78fn199675f2ae105c8@mail.gmail.com>
2009/1/30 Pascal Obry <pascal@obry.net>:
> Santi,
>
> Thanks for you reply.
>
>> I think your definition is not well defined. A, B and C are just
>> branches of you project, technically they are equivalent. Maybe you
>
> Right. Yet I want to know from which branch a branch as been started.
You can set it when you create the branch:
git branch --track newbranch startpointbranch
(maybe --track is the default these days for remote branches)
And then the config keys:
branch.newbranch.remote
branch.newbranch.merge
will tell you from which branch a branch was started. And it is used
in "git pull" to merge from the tracking branch.
> You need this to get the proper merge-base for example:
>
> $ git merge-base C A
> 1
>
> $ git merge-base B C
> 2
>
> $ git merge-base B A
> 1
1 and 2 are defined in the graph below...
> I always know on which topic branch I'm but, as shown above, depending on the
> parent branch passed to merge-base you do not get the same branch-point. This
> is fine.
>
> So, when I'm in a topic branch I want to find the name of the parent
> branch. The one given
> when creating the branch:
>
> $ git branch B C
See above.
>
> A "stupid" solution whould be to iterate over all branches. Looking
> for the merge-base and
> at the end output the branch having the youngest merge-base. I'm
> looking for something
> more efficient...
>
Maybe if you explain why you want it (a use case) instead of just this
specific problem...
>> are thinking that the common commits of, say A and B, really belongs
>> to A, but this is not the case they belong to both branches. In git a
>> branch is really just a pointer to a commit and by extension the
>> history, it is not a series of commits.
>>
>> Just a counterexample, just rearranging you graph:
>>
>> o---B
>> /
>> o---2---o---o---o---C
>> /
>> ---o---1---o---o---o---A
>>
>> From you description: For B I would get C and for C I would get A.
Please, if you quote text do not edit it (the 1 and the 2 in this case).
> Don't see this as a counter-example as it is exactly my example.
>
> Did I missed something?
Yes. Compare your sentence and mine:
For B I want to get A and for C I want to get B.
For B I would get C and for C I would get A.
So for B you get A while I get C, and the equivalent for C.
Santi
next prev parent reply other threads:[~2009-01-30 13:18 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-01-30 10:56 Finding the name of the parent branch? Pascal Obry
2009-01-30 11:18 ` Santi Béjar
2009-01-30 12:56 ` Pascal Obry
2009-01-30 13:16 ` Santi Béjar [this message]
2009-01-30 13:35 ` Pascal Obry
2009-01-30 13:57 ` Santi Béjar
2009-01-30 14:06 ` Pascal Obry
2009-01-30 14:46 ` Santi Béjar
2009-01-30 13:35 ` Michael J Gruber
2009-01-30 14:26 ` Thomas Koch
2009-01-30 15:58 ` Pascal Obry
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=adf1fd3d0901300516y3d1bf58dmda9c5172586d828@mail.gmail.com \
--to=santi@agolina.net \
--cc=git@vger.kernel.org \
--cc=pascal@obry.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).