Subject: Re: [PATCH] Geolocation support

From: Junio C Hamano <[email-masked]>
Date: Thu, 12 Feb 2015 12:57:11 -0800

Alessandro Di Marco <[email-masked]> writes:

> Junio C Hamano <[email-masked]> writes:
>
>> More importantly, adding non-essential stuff left and right will force
>> third party Git reimplementations to pay attention to them and also
>> will leave room for them to make mistakes when deciding what to
>> propagate, what to drop and what to update when rewriting commits via
>> rebase, cherry-pick, etc.
>
> ??? http://en.wikipedia.org/wiki/Security_through_obscurity
>
> Do you realize that every git I tried so far has happily accepted any
> crufts I sent to it via git push? And that they stored that crufts and
> then returned it on cloning? :-|

Yes, they will all copy the original commits byte-for-byte.
Otherwise they are broken.

But that is not the paragraph you quoted and responded is about.

What *should* happen, either in the original repository or the other
repository you pushed these commits into, when you _rewrite_ such a
commit?  Should all the cruft headers be carried over to the
rewritten commit?  Should all of them be dropped?  Should some be
kept but some be dropped?  Should some be kept under one condition
but not others?  How are you making sure that all Git reimplementations
do the same thing to the random cruft headers?