On Thu, Aug 23, 2012 at 10:10:25AM +0200, mhagger@xxxxxxxxxxxx wrote: > There were various confusing things (and a couple of bugs) in the way > that fetch_pack() handled the list (nr_heads, heads) of references to > be sought from the remote: Aside from the minor comments I made to individual patches, this all looks good. As usual, thanks for breaking it down; I wish all series were as easy to review as this. > I'm still suspicious about the logic related to args.fetch_all and > args.depth, but I don't think I've made anything worse. I think the point of that is that when doing "git fetch-pack --all --depth=1", the meaning of "--all" is changed from "all refs" to "everything but tags". Which I kind of see the point of, because you don't want to grab ancient tags that will be expensive. But wouldn't it make more sense to limit it only to the contents of refs/heads in that case? Surely you wouldn't want refs/notes, refs/remotes, or other hierarchies. I suspect this code is never even run at all these days. All of the callers inside git should actually provide a real list of refs, not "--all". So it is really historical cruft for anybody who calls the fetch-pack plumbing (I wonder if any third-party callers even exist; this is such a deep part of the network infrastructure that any sane scripts would probably just be calling fetch). -Peff -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html