Thread (79 messages) 79 messages, 10 authors, 2025-08-05

Re: [PATCH RFC 0/5] Introduce git-blame-tree(1) command

From: Toon Claes <hidden>
Date: 2025-05-07 14:22:19

Marc Branchaud [off-list ref] writes:
I feel the need to get some bike-shedding off my chest, though:
Always welcome!
"blame-tree" would be a terrible name for this command.
Do you feel this way because "blame" as a negative conotation?
I think that if Git ends up with two blame-like commands it will
merely solidify Git's reputation for obscurity.
I think "blaming" is a well-concept in Git, and many people (familiar
with Git) would understand in instant what `blame-tree` would do.
If this is really a form of blaming, then just make it an extension of 
"git blame", like maybe "git blame --latest".
I'm afraid that won't work very well, because the code is very much
different. If naming is the only motivation to shoehorn this in, then I
think it's better to rethink the name?
Otherwise, please come up with a new command name.  "git latest"?  "git 
"latest-revs"?  As long as it doesn't use the word "blame"...
I've been thinking about this a lot more, but I failed to come up with a
better name.
FYI, here's Peff's original explanation[1] of how he came up with the name:

 > I wasn't sure at first what to call it or what the calling conventions
 > should be. The initial thought was to make it part of "ls-tree". But
 > that feels wrong, as ls-tree otherwise never cares about traversal.
 > The combination of traversal and diff made me think of blame, and
 > indeed, I think this is really just about blaming a whole tree at the
 > file-level, rather than at the content-level. Thus I called it blame-
 > tree, and I used the same calling conventions as blame:
 > "git blame-tree <path> <rev opts>".

To me that reads like an argument for folding this into "git blame".
Forgive me, but I think folding into git-blame(1) will also solidify
Git's reputation of obscurity.

I think `blame-tree` is a fine name for this feature, but in the end I
don't care too much about the exact name. If we end up naming it `git
last-for-each`, `git annonate-files`, `git log-everyone`, or `git
when-modified` ... It's all good for me.
[1] 
https://lore.kernel.org/git/20110302164031.GA18233@sigill.intra.peff.net/ (local)

--
Toon
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help