On Tue, Dec 25, 2012 at 2:10 AM, Junio C Hamano <gits...@pobox.com> wrote:
>> I looked briefly at reflog before writing my previous mail and noticed
>> that when I create a new branch (usually using "git checkout -b branch
>> ref") it does not record the base commit.
> Hmph.  Perhaps you are referring to something different than what I
> think "the base commit" with that word.
>     $ git reflog mz/pick-unborn | tail -n 1
>     b3cf6f3 mz/pick-unborn@{3}: branch: Created from ko/master

No you're right. My reflogs must be pruned. Creating a new branch does
produce that entry.

>> We could at least invalidate the recorded base in reflog and let user
>> define a new one (I hope).
> Please do not even think about going back and rewrite to lose
> information.  If the records have full information, you should be
> able to reconstruct what you want from it without rewriting.
> Even more importantly, wish to "invalidate" indicates that you know
> at a newer point that you have more authoritative information than
> the older reflog entries, so you should be able to do the moral
> equivalent by writing the event as establishing a new base at that
> point (e.g. "checkout -B"), and stopping at that point in the reflog
> when reading, without losing the older reflog entries.

Exactly. And when we prune the reflog, we could add the base back so
the base is always in reflog.
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to