emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Obscure error/warning/information message from git pull


From: Sergey Organov
Subject: Re: Obscure error/warning/information message from git pull
Date: Tue, 18 Nov 2014 19:59:51 +0300
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/23.2 (gnu/linux)

Alan Mackenzie <address@hidden> writes:

> Hello, Sergey.
>
> On Mon, Nov 17, 2014 at 02:54:06PM +0300, Sergey Organov wrote:
>> Alan Mackenzie <address@hidden> writes:
>
>
>> >> Because in GIT commits are not on a branch. All commits are arranged into
>> >> DAG, and branch is just a pointer into the DAG. Any given commit is
>> >> either reachable from given branch or not. It's that simple.
>
>> > I think you're just playing with words, here.  We all know what a branch
>> > is, and git knows which revisions are on which branch (or branches?),
>
>> You pretend you don't understand what I said above?
>
> I didn't understand when I wrote it, I think I do now.  You want to use
> "branch" to mean what people like me would call "branch tip" or "branch
> head".  This change in meaning can only lead to confusion and
> difficulties communicating.
>
>> It's not for playing with words. One better speaks "GIT language" if he
>> wants to be efficient with GIT.
>
> I looked in the git glossary, and that confirmed that the official usage
> of "branch" is as I have used and continue to use it.

Please continue to call branch "branch", no opposition.

My point is that once you send "branch" to a Git command, it effectively
becomes "branch tip", "branch head", or "ref", or a "pointer to
particular commit", whatever we might call it, as Git itself has no
"branches" that are "active lines of development" in its data model.

Understanding this makes it clear why you need to say something like this:

$ git log --source emacs-24 origin/master

to get "list of commits with branch names", where:

       --source
           Print out the ref name given on the command line by which each
           commit was reached.

Please notice no "branch" in the description of the "--source", and
notice that "origin/master" is a ref, but not actually a branch, that
makes no difference for Git. You can have used Git tag the same way and
it would still work.Kinda like "everything is a buffer" in Emacs.

-- 
Sergey.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]