From: Junio C Hamano <junkio@cox.net>
To: Linus Torvalds <torvalds@osdl.org>
Cc: git@vger.kernel.org
Subject: Re: [RFC] Applying a graft to a tree and "rippling" the changes through
Date: Fri, 18 Nov 2005 16:49:34 -0800 [thread overview]
Message-ID: <7v3bltea1t.fsf@assigned-by-dhcp.cox.net> (raw)
In-Reply-To: Pine.LNX.4.64.0511180915560.13959@g5.osdl.org
Linus Torvalds <torvalds@osdl.org> writes:
> On Fri, 18 Nov 2005, sf wrote:
>>
>> A commit is really just the statement: "I changed the tree from state A to
>> state B". After all, the commit message does not describe the new state
>> (neither the old state) but does describe the changes.
>
> There are lots of changelog entries that don't necessarily make sense
> without knowing what went before them, so history is actually important
> even in a local sense - it's often what allows the explanation to make
> sense.
I agree with what you said about commit objects and what they
are meant to describe. At the same time, I am sympathetic if
somebody wants to be able to say just "The change this commit
brings in can be used to modify the behaviour X to Y". An
implied prerequisite for such a statement is that you can apply
such a change only to something that has behaviour X, and
internally works in a certain way to exhibit that behaviour, to
begin with (IOW, otherwise the patch does not apply). While
your "commit describes all the history leading to it" obviously
satisfies that prerequisite, it is stronger than necessary.
For that matter, "tree A changed into tree B" is stronger than
necessary as well. There are trees other than tree A that has
the same behaviour X, and applying such a change would be valid
to modify its behaviour to Y.
You are absolutely right that commit messages should be taken in
the context of the history leading to it. However, when we
exchange patches via e-mail, or do "rebase" in the repository,
we also use the commit message to label the change -- and with
that usage, the log message becomes less about describing the
history and more about "modifies X to Y", so it is easy to get
confused.
next prev parent reply other threads:[~2005-11-19 0:49 UTC|newest]
Thread overview: 29+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-11-17 23:07 [RFC] Applying a graft to a tree and "rippling" the changes through Yann Dirson
2005-11-17 23:28 ` Johannes Schindelin
2005-11-19 14:04 ` Yann Dirson
2005-11-19 14:13 ` Yann Dirson
2005-11-19 15:27 ` Johannes Schindelin
2005-11-19 17:09 ` Yann Dirson
2005-11-19 17:23 ` Matthias Urlichs
2005-11-20 1:24 ` Johannes Schindelin
2005-11-20 7:32 ` Matthias Urlichs
2005-11-20 11:44 ` Johannes Schindelin
2005-11-20 22:35 ` Yann Dirson
2005-11-23 3:29 ` Paul Mackerras
2005-11-23 7:27 ` Matthias Urlichs
2005-11-23 17:14 ` Linus Torvalds
2005-11-20 22:32 ` Yann Dirson
2005-11-20 23:46 ` Johannes Schindelin
2005-11-21 2:24 ` Matthias Urlichs
2005-11-21 5:18 ` Ryan Anderson
2005-11-21 22:30 ` Yann Dirson
2005-11-18 13:57 ` sf
2005-11-18 17:25 ` Linus Torvalds
2005-11-19 0:49 ` Junio C Hamano [this message]
2005-11-19 1:07 ` Linus Torvalds
2005-11-19 1:21 ` Junio C Hamano
2005-11-19 1:29 ` Linus Torvalds
2005-11-19 13:27 ` Yann Dirson
2005-11-19 1:38 ` Yann Dirson
2005-11-18 15:54 ` Josef Weidendorfer
2005-11-19 13:16 ` Yann Dirson
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=7v3bltea1t.fsf@assigned-by-dhcp.cox.net \
--to=junkio@cox.net \
--cc=git@vger.kernel.org \
--cc=torvalds@osdl.org \
/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).