DVCS vs. Subversion brittleness (was Re: Moving to D)
Michel Fortin
michel.fortin at michelf.com
Fri Feb 11 10:31:26 PST 2011
On 2011-02-11 08:05:27 -0500, Bruno Medeiros
<brunodomedeiros+spam at com.gmail> said:
> On 09/02/2011 14:27, Michel Fortin wrote:
>> On 2011-02-09 07:49:31 -0500, Bruno Medeiros
>> <brunodomedeiros+spam at com.gmail> said:
>>
>>> I was about to say "Cool!", but then I checked the doc on that link
>>> and it says:
>>> "A shallow repository has a number of limitations (you cannot clone or
>>> fetch from it, nor push from nor into it), but is adequate if you are
>>> only interested in the recent history of a large project with a long
>>> history, and would want to send in fixes as patches. "
>>> So it's actually not good for what I meant, since it is barely usable
>>> (you cannot push from it). :(
>>
>> Actually, pushing from a shallow repository can work, but if your
>> history is not deep enough it will be a problem when git tries determine
>> the common ancestor. Be sure to have enough depth so that your history
>> contains the common ancestor of all the branches you might want to
>> merge, and also make sure the remote repository won't rewrite history
>> beyond that point and you should be safe. At least, that's what I
>> understand from:
>> <http://git.661346.n2.nabble.com/pushing-from-a-shallow-repo-allowed-td2332252.html>
Interesting.
>>
> But it still feels very much like a second-class functionality, not
> something they really have in mind to support well, at least not yet.
>
> Ideally, if one wants to do push but the ancestor history is
> incomplete, the VCS would download from the central repository whatever
> revision/changeset information was missing.
Actually, there's no "central" repository in Git. But I agree with your
idea in general: one of the remotes could be designated as being a
source to look for when encountering a missing object, probably the one
from which you shallowly cloned from. All we need is someone to
implement that.
--
Michel Fortin
michel.fortin at michelf.com
http://michelf.com/
More information about the Digitalmars-d
mailing list