Re: [PATCH v2 09/11] gitweb: git_is_head_detached() function
- From
Junio C Hamano <gitster@pobox.com>
- Date
- Nov 14, 2008, 06:40 UTC
- Message-ID
- <7vk5b6dd3t.fsf@gitster.siamese.dyndns.org>
- In-Reply-To
- <1226616555-24503-10-git-send-email-giuseppe.bilotta@gmail.com>
Giuseppe Bilotta <giuseppe.bilotta@gmail.com> writes:
> The function checks if the HEAD for the current project is detached by > checking if 'git branch' returns "* (no branch)"
This one looks more like "oops, the way detached HEAD is detected in 08 is sucky, let's cover it up by introducing a function as an afterthought."
Have a patch that introduces git_is_head_detached() first, and then use that function to implement the feature. I personally think the user (that is, 08/11) is small and isolated enough that these two can be a single patch.
Show 6 quoted lines
> +# check if current HEAD is detached
> +sub git_is_head_detached {
> + my @x = (git_cmd(), 'branch');
> + my @ret = split("\n", qx(@x));
> + return 0 + grep { /^\* \(no branch\)$/ } @ret;
> +}Do not read from Porcelain in scripts.
"git symbolic-ref HEAD" should error out when your HEAD is detached, and will return refs/heads/frotz when you are on frotz branch.
But realistically speaking, what does it mean to have a detached HEAD in a repository published via gitweb? First of all these things are supposed to be bare and there would be no checkout.