From: Junio C Hamano <hidden> Date: 2016-06-15 22:45:52
Karl Chen [off-list ref] writes:
... you really think "branchfoo" instead of
"refs/heads/branchfoo" is a narrow special case?
Of course it is narrower. There are namespaces other than "heads" under
refs, and not everybody is interested in branches.
obviously all those people posting on blogs don't know about it :)
Yes, and that won't be helped by any new option to the plumbing.
The above two does not necessarily mean that it is useless to add a new
option to help a narrow special case that is common, though.
Hi,
On Sun, Jan 4, 2009 at 2:36 PM, Junio C Hamano [off-list ref] wrote:
Karl Chen [off-list ref] writes:
quoted
... you really think "branchfoo" instead of
"refs/heads/branchfoo" is a narrow special case?
Of course it is narrower. There are namespaces other than "heads" under
refs, and not everybody is interested in branches.
quoted
obviously all those people posting on blogs don't know about it :)
Yes, and that won't be helped by any new option to the plumbing.
The above two does not necessarily mean that it is useless to add a new
option to help a narrow special case that is common, though.
You'll find hereafter two patches which implements this in
git-symbolic-ref and git-rev-parse. Feel free to choose the one you
find the best. If you choose to integrate one of these, tells me and
I'll do a proper documentation bits and patch submission.
Sample output:
~/git/% ./git-rev-parse --symbolic-short-name HEAD
master
~/git/% ./git-symbolic-ref -a HEAD
master
~/git/% git checkout v1.6.1
~/git/% ./git-rev-parse --symbolic-short-name HEAD
HEAD
~/git/% ./git-symbolic-ref -a HEAD
fatal: ref HEAD is not a symbolic ref
~/git/% ./git-symbolic-ref -qa HEAD
~/git/%
Thanks in advance,
- Arnaud
ps: I choose --symbolic-short-name as the opposite of
--symbolic-full-name for consistency.
ps2: sorry for the bogus mime-type
Hi,
On Sun, Jan 4, 2009 at 5:38 PM, Miklos Vajna [off-list ref] wrote:
On Sun, Jan 04, 2009 at 03:23:03PM -0500, Arnaud Lacombe [off-list ref] wrote:
quoted
ps: I choose --symbolic-short-name as the opposite of
--symbolic-full-name for consistency.
ps2: sorry for the bogus mime-type
That's not a problem, just don't attach your patch. Please read
Documentation/SubmittingPatches.
ok, looks, I did these patch this morning quickly, didn't commit
anything or so. If there worth anything, then I'll spent time
commiting, doing nice integration, documentation, whatsoever ... Just
need a quick yes or no, these as patch are really trivial.
- Arnaud
ps: btw, Documentation/git-format-patch.txt does not describe the -M
flag, not does it describe the -B flag
From: Junio C Hamano <hidden> Date: 2016-06-15 22:45:52
"Arnaud Lacombe" [off-list ref] writes:
You'll find hereafter two patches which implements this in
git-symbolic-ref and git-rev-parse. Feel free to choose the one you
find the best. If you choose to integrate one of these, tells me and
I'll do a proper documentation bits and patch submission.
@@ -125,13 +129,20 @@ static void show_rev(int type, const unsigned char *sha1, const char *name) */ break; case 1: /* happy */+ if (symbolic == SHOW_SYMBOLIC_SHORT) {+ char *p;+ p = strrchr(full, (int)'/');+ if (p != NULL)+ full = p + 1;+ }
However, this is not a good way to do it, I suspect. This patch most
likely will be queued to the al/symbolic-short topic branch, but you are
losing information here. You'd probably want to try substings from the
tail of the full name (e.g. symbolic-short, al/symbolic-short,
heads/al/symbolic-short, and finally refs/heads/al/symbolic-short) and
feed them to dwim_ref() and pick the shortest one that yields the same ref
unambiguously, or something like that.
By the way, I do not see why you need to cast '/'.
@@ -125,13 +129,20 @@ static void show_rev(int type, const unsigned char *sha1, const char *name) */ break; case 1: /* happy */+ if (symbolic == SHOW_SYMBOLIC_SHORT) {+ char *p;+ p = strrchr(full, (int)'/');+ if (p != NULL)+ full = p + 1;+ }
However, this is not a good way to do it, I suspect. This patch most
likely will be queued to the al/symbolic-short topic branch, but you are
losing information here. You'd probably want to try substings from the
tail of the full name (e.g. symbolic-short, al/symbolic-short,
heads/al/symbolic-short, and finally refs/heads/al/symbolic-short) and
feed them to dwim_ref() and pick the shortest one that yields the same ref
unambiguously, or something like that.
ok, I see what you mean, I'll rework the patch to fix this. I was
about to do a proper patch submission when I saw you reply, so it will
be for next time!
By the way, I do not see why you need to cast '/'.
overzealous type casting due to lack of cafeine in blood :-)
regards,
- Arnaud