small downloads and immutable history (Re: clone breaks replace)
- From
Jonathan Nieder <jrnieder@gmail.com>
- Date
- Jan 14, 2011, 20:53 UTC
- Message-ID
- <20110114205308.GA15286@burratino>
- In-Reply-To
- <4D2CFD0A.1060901@cfl.rr.com>
Phillip Susi wrote:
> On 01/11/2011 03:50 PM, Jonathan Nieder wrote:
Show 5 quoted lines
>> Yes, except for "Using filter-branch is bad". Using filter-branch is >> not bad. > > It is bad because it breaks people tracking your branch, and > violates the immutability of history.
Ah, I forgot the use case. If you are using this to at long last get past the limitations (e.g., inability to push) of "fetch --depth", then yes, rewriting existing history is bad.
So what's left is some way to make the "have" part of transport negotiation make sense in this context. I'll be happy if it happens.
Thanks for clarifying. Jonathan
[note: if you occasionally use
git commit; # new commit git tag tmp git checkout --orphan newroot git replace newroot tmp git tag -d tmp
so the history without replacement refs is short, no rewriting of history has to take place. Some testing and tweaking might be required to make "git pull" continue to fast-forward.]