Subject: Re: Wishlist for a bundle-only transport mode

From: Jakub Narebski <[email-masked]>
Date: Fri, 23 Nov 2007 11:04:32 +0100

On Fri, 23 Nov 2007, Junio C Hamano wrote:
> Jakub Narebski <[email-masked]> writes:
>> On Thu, 22 Nov 2007, Junio C Hamano :
>>> "Santi Béjar" <[email-masked]> writes:
>>> 
>>>> Sorry but I do not understand this. I think this two lines could be equivalent:
>>>>
>>>> git push --bundle bundle.bdl "refs/heads/master:refs/remotes/bundle/master"
>>>> git bundle create bundle.bdl refs/heads/master ^refs/remotes/bundle/master
>>> 
>>> Interesting.
>>> 
>>> 	$ git push $something ours:theirs
>>> 
>>> has defined semantics for any value of $something.
>>> ...
>>> If bundle.bdl does not exist yet, it is like pushing into a
>>> freshly initialized empty repository.
>>
>> But for that I think "git bundle" should learn new subcommand:
>> "git bundle update", which would use refs existing in given
>> bundle as prerequisites, and either update bundle (create anew
>> or just concatenate next pack) or create incremental bundle.
>>
>> Something similar to incremental mode or update command of
>> archivers...
> 
> I was disagreeing with Santi's "'push --bundle' and 'bundle
> create' can be equivalent".  They can't be, as "push" is always
> "update" and never "create".  So I do not quite get your "But for
> that I think"; I think you are just agreeing with me.

Bad choice of words on my part... and I didn't parse that you were
disagreeing as well as commenting. :-/

> Even if we taught "push" to create (which I doubt would happen
> due to its security and administrative implications), it would
> not make the two any closer to being equivalent.  For them to
> become equivalent, we would need to have "push" unlearn how to
> update, which would never happen ;-).

I also think that pushing to bundle might be not a good idea;
but I think that "git clone <bundle>" should just work.

Nevertheless I think that having "git bundle update" or 
"git bundle create --reference=<old bundle>" (or both) would be
a good thing, as it would free us from remembering or tagging when
last bundle was created.

Could anyone who uses "git bundle" actively raise a voice?

-- 
Jakub Narebski
Poland