From: Mark Levedahl Date: Fri, 09 Mar 2007 15:36:16 GMT Subject: Re: [PATCH 2/3] git-bundle: die if a given ref is not included in bundle Message-ID: <45F17EF0.5060008@gmail.com> In-Reply-To: <7vejny7umx.fsf@assigned-by-dhcp.cox.net> Junio C Hamano wrote: > If I were doing a nightly script, I would probably be doing > something like this: > > #!/bin/sh > yesterday=$(git bundle list-heads yesterday.bdl | sed -e 's/ .*//') > git bundle create today.bdl --all --not $yesterday > # mail it out Thinking about this further, the above has a problem (or should, but see below). Consider a case where master is not updated since yesterday. Effectively, the above becomes git bundle create today.bdl master --not master As ref master is excluded, the bundle creation should die because master cannot be included. Experimenting with next (299fcfbdcb5afd85) however, I get: git>git bundle create t.bdl master --not master Generating pack... Done counting 0 objects. Writing 0 objects. Total 0 (delta 0), reused 0 (delta 0) git>git ls-remote t.bdl git> e.g, an empty bundle is created without any error or warning. This is the one case I believe an error should result: there is no use to sending (or even creating) an empty bundle. As a date limited bundle containing all updated refs is my basic use, I really want this case to not be hard, and it definitely should not require externally maintained history or scripting to create. Absent the "die if any ref wasn't updated in the given date range" logic, and adding always die if the resulting bundle is empty, git bundle in next accomplishes what I want. Mark