On 5/4/07, Junio C Hamano <junkio@xxxxxxx> wrote:
Johannes Sixt <J.Sixt@xxxxxxxxxxxxx> writes: > Alex Riesen wrote: >> On 5/4/07, Junio C Hamano <junkio@xxxxxxx> wrote: >> > My preference is (2), (3) and then (1), but I do not have >> > offhand a suggestion for a good metacharacter we could use. >> >> "./" :) > > +1, without the :) > and ../ should DWIM, too. I think these feel more or less natural (except that we do not say ":/fullpath" and instead say ":fullpath" which is unfortunate). In the hindsight, if we had the perfect vision into the future, we would have made <path> relative to where you are when we initially did "<something>:<path>", with obvious semantics for things like "<something>:../<path>" and "<something>:/<path>". We didn't. Further, we made a mistake to make :/ to mean something completely unrelated. My bad. So I think "./" is the best compromise in the meantime. With your suggestion, we can train people's fingers to type "./" now, and perhaps later in one of those big feature release like the 1.5.0 was, we could switch to "default to relative". At the same time of that big "UI correction", we could make "<something>:/<path>" to mean "full path in commit (or index/stage) no matter where I am". The current ":/<string>" is about going back, looking for the string, so it should not have used '/'; instead it should have been "<something>:?<string>". Maybe we could fix it by start accepting ":?" now (in addition to ":/"), give a big fat warning about ":/" going to mean a different thing, and encouraging users to use the question-mark form, in preparation for the big "UI correction". Do people like that plan? (soon after 1.5.2) - start accepting "<something>:./<path>" as "relative to where I am". - start accepting "<something>:?<string>" as "look back to find the string". - clearly explain the plan and prepare the users. (a big release in the future, perhaps 1.6.0) - "<something>:<path>" becomes relative to where you are. - stop "<something>:/<string>" and start "<something>:/<fullpath>".
I will resubmit the patch following Junio's plan. It will include the "1.6.0" features but disabled. I would just request that we expedite, if possible, at least the later switch from "<something>:/<string>" to "<something>:/<fullpath>", since with the patch _and_ the latter behavior enabled, scripts can be updated to always insert "./" or "/" and their intent will always be clear. Thanks, -- Dana L. How danahow@xxxxxxxxx +1 650 804 5991 cell - 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