Re: Recent unresolved issues
- From
Junio C Hamano <junkio@cox.net>
- Date
- Apr 15, 2006, 08:57 UTC
- Message-ID
- <7vk69ri5cp.fsf@assigned-by-dhcp.cox.net>
- In-Reply-To
- <7vu08vjra5.fsf@assigned-by-dhcp.cox.net>
Junio C Hamano <junkio@cox.net> writes:
> Although I've already decided to merge it up, there are small > fallout from this. I've fixed the ones I noticed, but there > probably remain some backward compatibility issues in commands > that I do not usually use. We'll see.
I am very to sorry to say this, but...
Pain
"git log" wants default abbrev (to show Merge: lines and "whatchanged -r" output compactly) while "git diff-tree -r" by default wants to show full SHA1 unless asked, which means "memset(revs, 0, sizeof(*revs))" in revision.c::init_revisions() needs to be defeated by the caller.
"git rev-list" wants to know if any --pretty was specified to set verbose_header, but there is no way to tell if the user did not say anything or said --pretty because revs->commit_format will be CMIT_FMT_DEFAULT either way. This is the worst breakage I found so far -- "git rev-list --pretty" no longer works, although "git rev-list --header" works so you probably did not notice the breakage with gitk.
Honestly, the longer I look at it, the more I feel that this way might break more things than it fixes. I haven't even looked at blame.c or http-push.c to see what's broken yet.