From: Jakub Narebski <jnareb@gmail.com>
To: Giuseppe Bilotta <giuseppe.bilotta@gmail.com>
Cc: git@vger.kernel.org, Petr Baudis <pasky@suse.cz>,
Junio C Hamano <gitster@pobox.com>
Subject: Re: [PATCH v2 01/11] gitweb: introduce remote_heads feature
Date: Fri, 14 Nov 2008 19:15:17 +0100 [thread overview]
Message-ID: <200811141915.17680.jnareb@gmail.com> (raw)
In-Reply-To: <1226616555-24503-2-git-send-email-giuseppe.bilotta@gmail.com>
On Thu, 13 Nov 2008, Giuseppe Bilotta wrote:
> With this feature enabled, remotes are retrieved (and displayed)
> when getting (and displaying) the heads list.
I think it would be good idea to add in commit message idea _why_
such feature would be useful, for example
This is useful if you want to use git-instaweb to examine the state
of repository, influding remote-tracking branches, or a repository
is fork of other repository, and remote-tracking branches are used
to see what commits this fork has in addition to those from forked
(main) repository.
Or something like that.
It would be also in my opinion a good idea to modify git-instaweb.sh
(I guess better in separate commit) to make it make use of this new
feature... unless it does it already, doesn't it?
>
> Signed-off-by: Giuseppe Bilotta <giuseppe.bilotta@gmail.com>
> ---
> gitweb/gitweb.perl | 31 +++++++++++++++++++++++++++++--
> 1 files changed, 29 insertions(+), 2 deletions(-)
>
> diff --git a/gitweb/gitweb.perl b/gitweb/gitweb.perl
> index 933e137..b6c4233 100755
> --- a/gitweb/gitweb.perl
> +++ b/gitweb/gitweb.perl
> @@ -327,6 +327,18 @@ our %feature = (
> 'ctags' => {
> 'override' => 0,
> 'default' => [0]},
> +
> + # Make gitweb show remotes too in the heads list
I'm not native engish speaker, but shouldn't instead of "remotes too"
be "also remotes" or "remotes also"?
> +
> + # To enable system wide have in $GITWEB_CONFIG
> + # $feature{'remote_heads'}{'default'} = [1];
> + # To have project specific config enable override in $GITWEB_CONFIG
> + # $feature{'remote_heads'}{'override'} = 1;
> + # and in project config gitweb.remote_heads = 0|1;
> + 'remote_heads' => {
> + 'sub' => \&feature_remote_heads,
> + 'override' => 0,
> + 'default' => [0]},
> );
>
> sub gitweb_check_feature {
> @@ -392,6 +404,18 @@ sub feature_pickaxe {
> return ($_[0]);
> }
>
> +sub feature_remote_heads {
> + my ($val) = git_get_project_config('remote_heads', '--bool');
> +
> + if ($val eq 'true') {
> + return (1);
> + } elsif ($val eq 'false') {
> + return (0);
> + }
> +
> + return ($_[0]);
> +}
Hmmm... I think it is hight time to provide option to
git_get_project_config to _not_ use backward compatibility with
'git config --bool', i.e. return Perl bool, and not 'true'/'false'
string.
But this is I think outside scope of this patch...
> +
> # checking HEAD file with -e is fragile if the repository was
> # initialized long time ago (i.e. symlink HEAD) and was pack-ref'ed
> # and then pruned.
> @@ -2642,10 +2666,12 @@ sub git_get_heads_list {
> my $limit = shift;
> my @headslist;
>
> + my ($remote_heads) = gitweb_check_feature('remote_heads');
> +
> open my $fd, '-|', git_cmd(), 'for-each-ref',
> ($limit ? '--count='.($limit+1) : ()), '--sort=-committerdate',
> '--format=%(objectname) %(refname) %(subject)%00%(committer)',
> - 'refs/heads'
> + 'refs/heads', ( $remote_heads ? 'refs/remotes' : '')
> or return;
> while (my $line = <$fd>) {
> my %ref_item;
> @@ -2656,8 +2682,9 @@ sub git_get_heads_list {
> my ($committer, $epoch, $tz) =
> ($committerinfo =~ /^(.*) ([0-9]+) (.*)$/);
> $ref_item{'fullname'} = $name;
> - $name =~ s!^refs/heads/!!;
> + $name =~ s!^refs/(head|remote)s/!!;
>
> + $ref_item{'class'} = $1;
Nice catch.
> $ref_item{'name'} = $name;
> $ref_item{'id'} = $hash;
> $ref_item{'title'} = $title || '(no commit message)';
> --
> 1.5.6.5
>
>
--
Jakub Narebski
Poland
next prev parent reply other threads:[~2008-11-14 18:16 UTC|newest]
Thread overview: 46+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-11-13 22:49 [PATCH v2 00/11] gitweb: display remote heads Giuseppe Bilotta
2008-11-13 22:49 ` [PATCH v2 01/11] gitweb: introduce remote_heads feature Giuseppe Bilotta
2008-11-13 22:49 ` [PATCH v2 02/11] gitweb: git_get_heads_list accepts an optional list of refs Giuseppe Bilotta
2008-11-13 22:49 ` [PATCH v2 03/11] gitweb: separate heads and remotes list in summary view Giuseppe Bilotta
2008-11-13 22:49 ` [PATCH v2 04/11] gitweb: optional custom name for refs in git_heads_body Giuseppe Bilotta
2008-11-13 22:49 ` [PATCH v2 05/11] gitweb: git_split_heads_body function Giuseppe Bilotta
2008-11-13 22:49 ` [PATCH v2 06/11] gitweb: use CSS to style split head lists Giuseppe Bilotta
2008-11-13 22:49 ` [PATCH v2 07/11] gitweb: add 'remotes' action Giuseppe Bilotta
2008-11-13 22:49 ` [PATCH v2 08/11] gitweb: display HEAD in heads list when detached Giuseppe Bilotta
2008-11-13 22:49 ` [PATCH v2 09/11] gitweb: git_is_head_detached() function Giuseppe Bilotta
2008-11-13 23:54 ` [PATCH v2 10/11] gitweb: add HEAD to list of shortlog refs if detached Giuseppe Bilotta
2008-11-13 23:54 ` [PATCH v2 11/11] gitweb: CSS style and refs mark for detached HEAD Giuseppe Bilotta
2008-11-16 0:08 ` Jakub Narebski
2008-11-15 23:59 ` [PATCH v2 10/11] gitweb: add HEAD to list of shortlog refs if detached Jakub Narebski
2008-11-14 6:40 ` [PATCH v2 09/11] gitweb: git_is_head_detached() function Junio C Hamano
2008-11-14 8:52 ` Giuseppe Bilotta
2008-11-14 17:44 ` Junio C Hamano
2008-11-14 21:17 ` Nanako Shiraishi
2008-11-15 23:43 ` Jakub Narebski
2008-11-15 22:31 ` [PATCH v2 08/11] gitweb: display HEAD in heads list when detached Jakub Narebski
2008-11-15 12:16 ` [PATCH v2 07/11] gitweb: add 'remotes' action Jakub Narebski
2008-11-15 12:32 ` Giuseppe Bilotta
2008-11-16 0:29 ` Jakub Narebski
2008-11-16 2:47 ` Giuseppe Bilotta
2008-11-15 0:20 ` [PATCH v2 06/11] gitweb: use CSS to style split head lists Jakub Narebski
2008-11-14 23:59 ` [PATCH v2 05/11] gitweb: git_split_heads_body function Jakub Narebski
2008-11-15 10:04 ` Giuseppe Bilotta
2008-11-16 1:13 ` Jakub Narebski
2008-11-16 2:53 ` Giuseppe Bilotta
2008-11-15 12:14 ` Junio C Hamano
2008-11-15 12:25 ` Giuseppe Bilotta
2008-11-16 12:12 ` Jakub Narebski
2008-11-16 12:26 ` Giuseppe Bilotta
2008-11-16 14:21 ` Jakub Narebski
2008-11-16 15:28 ` Giuseppe Bilotta
2008-11-14 23:32 ` [PATCH v2 04/11] gitweb: optional custom name for refs in git_heads_body Jakub Narebski
2008-11-15 10:11 ` Giuseppe Bilotta
2008-11-14 20:04 ` [PATCH v2 03/11] gitweb: separate heads and remotes list in summary view Jakub Narebski
2008-11-14 22:01 ` Giuseppe Bilotta
2008-11-14 18:48 ` [PATCH v2 02/11] gitweb: git_get_heads_list accepts an optional list of refs Jakub Narebski
2008-11-14 21:52 ` Giuseppe Bilotta
2008-11-14 18:15 ` Jakub Narebski [this message]
2008-11-14 21:44 ` [PATCH v2 01/11] gitweb: introduce remote_heads feature Giuseppe Bilotta
2008-11-14 14:33 ` [PATCH v2 00/11] gitweb: display remote heads Jakub Narebski
2008-11-14 15:25 ` Sverre Rabbelier
2008-11-14 18:37 ` Giuseppe Bilotta
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=200811141915.17680.jnareb@gmail.com \
--to=jnareb@gmail.com \
--cc=git@vger.kernel.org \
--cc=gitster@pobox.com \
--cc=giuseppe.bilotta@gmail.com \
--cc=pasky@suse.cz \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).