Nguyen Thai Ngoc Duy venit, vidit, dixit 21.03.2011 05:02: > On Thu, Mar 10, 2011 at 5:05 PM, Nguyen Thai Ngoc Duy <pclouds@xxxxxxxxx> wrote: >> 2011/3/10 Junio C Hamano <gitster@xxxxxxxxx>: >>> Let's step back a bit. >>> >>> We chose to use ":/<regexp>" as one new form of extended SHA-1 expression >>> to name an object for two reasons: (1) no normal <ref> can have a colon in >>> it, because of check-ref-format restriction; (2) ":" is an unlikely letter >>> to appear at the beginning of a pathname, and people with such a path can >>> work around by saying "./:frotz" or "\:xyzzy". >>> >>> There is a disambiguation logic to check a list of arguments that lacks an >>> explicit "--" separator to make sure that each element early on the list >>> can only be interpreted as an object name but not as a pathname that >>> exists on the filesystem, and all the remaining elements are pathnames >>> that exist on the filesystem. >>> >>> If we introduce an extended syntax for pathspec and make the prefix magic >>> character ":", and if we choose to use ":/" as one kind of magic, I was a >>> bit worried that this may affect the disambiguation. The users must use >>> an explicit "--" when feeding a pathspec with the magic so that the parser >>> knows which kind of magic (either object name magic or pathspec magic) >>> they are talking about. >> >> Or.. we can consider this ':' a special form of wildcard and interpret >> the same way: >> >> - first try exact match. If it matches, the leading ':' is >> interpreted literally as part of file name. >> - magic. > > One thing that makes it different from Michael's approach is, :/foo > will match ':/foo' literally in every directories and foo at top-tree. > I feel mildly uncomfortable with it, but it makes it consistent with > other wildcards. If no one objects, I'll try to make a patch with this > approach. Maybe I misunderstand which topic you are referring to. I have a patch for ":" (to denote repo-root in pathspecs), there's no need to make another one for ":/". (I would really prefer to do it myself since I brought it up.) I was just waiting for agreement to settle in about which prefix to use. Also, I have checked with J&J of mingw/msysgit fame meanwhile to make sure that the notation does not create problems on the windows side of git. Michael -- 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