Junio C Hamano <gitster@xxxxxxxxx> writes: > So, after thinking about it a bit more, I do not think I agree with > the NEEDSWORK comment. I can buy "@", but not an arbitrary revision > name that happens to point at the same commit as HEAD. One more thing is it might make sense, if we were to allow more than the literal string "HEAD", is to include the name of the current branch (e.g., if "git symbolic-ref HEAD" says "refs/heads/main", then "main") to the set of tokens that the user may use when they mean to refer to "HEAD". Unlike "newbranch" they are not currently on, if they know what branch they are on and they know that is what HEAD refers to, so the likelihood of them wanting to see the command behave (i.e. the direction of the patch to be selected and the messages) the same way may be much higher, I would suspect. But still, the sudden reversal of the direction of the patches may bring unexpected confusions to uses. I dunno. > In other > words, I may be persuaded to thinking into it is a good idea to add: > > static inline int user_means_HEAD(const char *a) > { > return !strcmp(a, "HEAD") || !strcmp(a, "@"); > } > > and replace "!strcmp(rev, "HEAD")" with "user_means_HEAD(rev)", but > I would not go any further than that. > > Thanks.