[Top][All Lists]

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

Re: Understanding a recent commit in emacs-25 branch [ed19f2]

From: Paul Eggert
Subject: Re: Understanding a recent commit in emacs-25 branch [ed19f2]
Date: Thu, 31 Mar 2016 23:43:14 -0700
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.6.0

Kaushal Modi wrote:
OK, I think I need some git education.

There was one section in your commit (
) which was already committed earlier (
). As I am familiar with that single commit, I know that they are identical.

Also I noted that your commit has a repeat of all the backquote/straight
quote changes in NEWS that happened recently.

But without this prior knowledge, how can one separate these duplicate
commits from the commits that actually are new?
Also, what is the reason for such duplicate commits happening?

There aren't any duplicate commits.

When you visit http://git.savannah.gnu.org/cgit/emacs.git/commit/?h=emacs-25&id=ed19f207449c43f7f08285ada87ae7a46c61c8d1 the website shows you the output of this command:

git diff ed19f207449c43f7f08285ada87ae7a46c61c8d1^..ed19f207449c43f7f08285ada87ae7a46c61c8d1

The commit ed19f207449c43f7f08285ada87ae7a46c61c8d1 is a merge with two parents: commits eabd667a9584fe5bd2422e296d256dceea67debf (which is a single incomplete fix for cc-mode) and 7c1802f6ffc2704ba8042c7c1c6faa73dfa210d1 (which is the main thread of the emacs-25 branch). The way Alan merged, the former commit is the first parent, so the abovementioned diff output looks large -- it contains many emacs-25 changes all squashed together. It might have been nicer if Alan had merged the other way, so that that the main thread was the first parent, but that's water under the bridge now. (In this particular case I would have avoided a merge entirely, and would have rebased instead, as that makes such changes easier for others to follow later; but that's also water under the bridge.)

Understanding what happened is somewhat complicated by the more-recent commit 22443312188ff097b69d9ff4b87c2b4f7bbbc263, which finished fixing the cc-mode patch and undid some of the effect of the incomplete fix.

You can see all this more easily by running the shell command "gitk" in a directory containing a checked-out copy of the emacs-25 branch.

reply via email to

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