git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: gitweb and remote branches

From
Giuseppe Bilotta <giuseppe.bilotta@gmail.com>
Date
Aug 30, 2007, 07:18 UTC
Message-ID
<cb7bb73a0708300018u37f5c465u5d87eae0eb23543c@mail.gmail.com>
In-Reply-To
<200708300001.39203.jnareb@gmail.com>
On 8/30/07, Jakub Narebski <jnareb@gmail.com> wrote:
> For quick'n'dirty solution this might be enough. For proper patch to
> be accepted I don't think so.
That's fine, it wasn't meant to be :)
> First, in the idea to show also remote branches (from refs/remotes),
> I wanted to separate heads list from remotes list in the 'summary'
> view, and add 'remotes' view or modify 'heads' view to accept some
> parameter specyfying kind of refs.

What I had in mind was a way to modify 'heads' view with a boolean option that enable/disabled remotes view. For their visualizations, I had in mind a split 'heads' secion, with the lhs being as it is now, and the rhs having the remotes.

However, I wasn't sure if such a view would have been appreciated, so I went for the merged view and used the spans to make the heads appear as they do in the shortlog, as a clear way to mark which ones were local and which ones were remote.

Show 5 quoted lines
> Second, what was stopping me from implementing that was an idea to
> separate remote branches into categories (like gitwbe-xmms2 categories
> of projects) defined by the remote it belongs to. And this is not so
> easy if we want to respect old .git/branches/ and .git/remotes/ remote
> config in addition to new config based remote config.

I don't know what gitweb-xmms2 does, but I think I understand what you mean, and I like the idea. However, it's even harder if you consider that even the latest git-svn plops all the svn-converted refs straight into refs/remotes and not in a subdir such as refs/remotes/svn.

OTOH, we have to start from somewhere so we can build the feature step by step.
Show 8 quoted lines
> > Giuseppe "Oblomov" Bilotta
> >
> > --- gitweb.cgi        2007-08-26 12:41:13.000000000 +0200
> > +++ gitweb.cgi-my     2007-08-28 13:47:15.000000000 +0200
>
> It is better to use git to manage source and to generate patches
> (use git-format-patch, check Documentation/SubmittingPatches),
> and use gitweb/gitweb.perl and not installed version.

Oh, I know, this was just a very quick hack on the thing installed by my Debian distribution. I've since checkoued out the git.git repository and I'll be working on that now.

Show 20 quoted lines
> > @@ -3237,8 +3238,10 @@ sub git_heads_body {
> >               $alternate ^= 1;
> >               print "<td><i>$ref{'age'}</i></td>\n" .
> >                     ($curr ? "<td class=\"current_head\">" : "<td>") .
> > +                   "<span class=\"refs\"><span class=\"$ref{'class'}\">" .
> >                     $cgi->a({-href => href(action=>"shortlog", hash=>$ref{'name'}),
> >                              -class => "list name"},esc_html($ref{'name'})) .
> > +                   "</span></span>" .
> >                     "</td>\n" .
> >                     "<td class=\"link\">" .
> >                     $cgi->a({-href => href(action=>"shortlog",
> > hash=>$ref{'name'})}, "shortlog") . " | " .
> >
>
> I don't understand this double span. First, you can set multiple
> classes for HTML element by separating them by space, e.g.
>
>                 "<span class=\"refs\ $ref{'class'}\">"
>
> And you could have given appropriate class to <td> or <a> element

Actually, that was just a quick hack to make the heads appear in the heads list in the same way as they appear in the shortlog, to differentiate between them. And that requires the double span ;)

Of course, I'd rather hack the CSS now that I've got the git repository.
I'll be working on it here
http://oblomov.dnsalias.org/git?p=git.git;a=shortlog;h=gitweb-allheads
and keep you posted on my progress.
-- 
Giuseppe "Oblomov" Bilotta
Previous: Jakub NarebskiNext: Jakub Narebski
Message 4 of 25 in “gitweb and remote branches”
  1. Giuseppe BilottaAug 27, 2007
  2. Jakub NarebskiAug 27, 2007
  3. Jakub NarebskiAug 29, 2007
  4. Giuseppe BilottaAug 30, 2007
  5. Jakub NarebskiAug 30, 2007
  6. Giuseppe BilottaAug 30, 2007
  7. Junio C HamanoAug 30, 2007
  8. Giuseppe BilottaAug 30, 2007
  9. Jakub NarebskiAug 30, 2007
  10. Giuseppe BilottaAug 30, 2007
  11. Giuseppe BilottaAug 31, 2007
  12. 01/14 gitweb: get remotes too when getting heads listGiuseppe Bilotta, Aug 31, 2007
  13. 02/14 gitweb: make remote heads in heads list optionalGiuseppe Bilotta, Aug 31, 2007
  14. 03/14 gitweb: git_get_heads_list now accepts an optional list of refs.Giuseppe Bilotta, Aug 31, 2007
  15. 04/14 gitweb: separate heads and remotes list in summary viewGiuseppe Bilotta, Aug 31, 2007
  16. 05/14 gitweb: allow refs passed to git_heads_body to use a name different from the hash nameGiuseppe Bilotta, Aug 31, 2007
  17. 06/14 gitweb: git_split_heads_body function.Giuseppe Bilotta, Aug 31, 2007
  18. 07/14 gitweb: use CSS to style split head lists.Giuseppe Bilotta, Aug 31, 2007
  19. 08/14 gitweb: add 'remotes' action as a synonym for git_heads()Giuseppe Bilotta, Aug 31, 2007
  20. 09/14 gitweb: split heads list in head view if appropriateGiuseppe Bilotta, Aug 31, 2007
  21. 10/14 gitweb: display HEAD in heads list when detachedGiuseppe Bilotta, Aug 31, 2007
  22. 11/14 gitweb: git_is_head_detached() functionGiuseppe Bilotta, Aug 31, 2007
  23. 12/14 gitweb: add HEAD to list of shortlog refs if detachedGiuseppe Bilotta, Aug 31, 2007
  24. 13/14 gitweb: CSS style and refs mark for detached HEADGiuseppe Bilotta, Aug 31, 2007
  25. 14/14 gitweb: minor whitespace cleanupsGiuseppe Bilotta, Aug 31, 2007

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.