From: Junio C Hamano Date: Sun, 01 May 2005 21:25:40 GMT Subject: Re: Complete http-pull; where should it go? Message-ID: <7voebuskob.fsf@assigned-by-dhcp.cox.net> In-Reply-To: >>>>> "LT" == Linus Torvalds writes: LT> On Sun, 1 May 2005, Daniel Barkalow wrote: >> >> Right; what I want to make programs able to do is take explicit >> references, instead of only taking the objects they reference. So you >> say heads/master or heads/linus instead of >> "198b0fb635ed8a007bac0c16eab112c5e2c7995c". LT> That's fine. LT> This is really just an issue of havign a function that does "get_sha1()", LT> and then making the things that take command line arguments use that LT> one instead of "get_sha1_hex()". LT> Then you can have rules like: LT> - if it's a hex number, take it LT> - if it's a filename, look it up LT> - if ".git/refs + str is a filename, look it up. LT> The _only_ thing I want to be careful about is that all the _internal_ LT> stuff still have to use the strict "get_sha1_hex()" function, ie we should LT> never _ever_ accept a tree object where the "sha1" ends up being anything LT> but the hex thing. So this "generalized get_sha1()" would have to be used LT> only on real user input (ie argv[] array and the like). I agree with Linus. Dan, you are welcome to lift the code from the find-in-vicinity() function in jit-util.c in my JIT toolset, found at http://members.cox.net/junkio/.