From: Jakub Narebski <jnareb@gmail.com>
To: Christian Couder <chriscool@tuxfamily.org>
Cc: git@vger.kernel.org, Junio C Hamano <gitster@pobox.com>,
Sverre Rabbelier <srabbelier@gmail.com>,
Petr Baudis <pasky@ucw.cz>, Shawn O Pearce <spearce@spearce.org>,
Scott Chacon <schacon@gmail.com>,
Pavan Kumar Sunkara <pavan.sss1991@gmail.com>,
Sam Vilain <sam@vilain.net>,
catalyst@lists.scsys.co.uk
Subject: Re: GSoC 2010: "Integrated Web Client for git" proposal
Date: Sun, 18 Apr 2010 02:46:16 +0200 [thread overview]
Message-ID: <201004180246.18263.jnareb@gmail.com> (raw)
In-Reply-To: <201004150630.44300.chriscool@tuxfamily.org>
Dnia czwartek 15. kwietnia 2010 06:30, Christian Couder napisał:
> Hi!
>
> Pavan Kumar Sunkara sent an email on the git mailing list a few days ago about
> his GSoC proposal:
>
> http://thread.gmane.org/gmane.comp.version-control.git/144658/
I would really prefer if Pavan just *wrote* the text of his "Integrated
Web Client for git" proposal for GSoC 2010 in email, instead of providing
link to it; link that requires signing-in.
This proposal aims at creating a multi-purpose HTML based GUI client
for git. This client intends in reducing the work needed to be done
by a developer while working on a git repository. This is not another
gitweb or gitorious but it also contains their functionalities as
submodules.
The project goal is to try and implement a integrated multi-purpose
HTML based GUI client for git. It contains two parts which are
crucial while working on a git repository, Read and Write.
* Read means browse through the code and repository
* Write means working on the code and repository
Also, in the future others will be able to develop more functionalities
for this client with the help of the framework like structure of this
project.
It is not entirely sure what this "Web Client" is meant to do. Is it
mainly meant as web interface to managing repositories (webmin for git),
something that GitHub, Gitorious, InDefero, Girocco all include? This
could mean web interface to configuring gitosis / gitolite. Or is it
meant as web analogue of git-gui: a committool, with ability to create
new commits, perhaps to edit files (and add them, delete them, move them
around), a bit like ikiwiki with Git backend, or other Git based wikis
and blogs? Or is it something else?
> His proposal is based on the project he already started:
>
> http://github.com/pkumar/gittor
>
> There have been discussions about it on the GSoC web app and in some private
> emails.
>
> Possible GSoC mentors for this proposal don't want yet another web interface,
> they want an existing interface to be improved on. As the obvious choice is to
> improve gitweb, the current result from the discussions is that the proposal
> should be changed so that the integrated web client is developed in Perl into
> or alongside gitweb.
It could be a waste to duplicate functionality that is already present
in gitweb, at least for GSoC (having yet another web interface for git,
this time in Python, could be a good thing... if the web interface would
be developed further).
As to integrating "Web Client for Git" with gitweb, there exists at least
a few possible ways to do this:
1. Keep "Web Client" separate for gitweb, and make use of gitweb
hooks/plugin system like $feature{'actions'}. This might require
adding new "hooks" to gitweb.
The advantage is that "Web Client" can be written in any language,
not necessary Perl. The disadvantage that if it is written in Perl,
some code might be duplicated. It might be hard to write generic
hooks - the "Web Client" could be not as well integrated with gitweb.
2. Write "Web Client" as a Perl module, like 'gitweb/cache.pm' in the
http://repo.or.cz/w/git/jnareb-git.git/log/refs/heads/gitweb/cache-kernel-pu
and 'require' this file as needed, guarded by global variable or
%feature.
The advantage is possible tighter integration. I am not sure about
being able to use code from gitweb in "Web Client". It also requires
using Perl, and might require using some contortions if the problem
would be naturally split into multiple modules: there can be multiple
modules, but it could be better to have them in one file.
3. Split Gitweb, add "Web Client" as one of modules. Might be best
from the purity point of view, but is practical only if it is
integrated in gitweb. That would require getting gitweb maintainer
out of GSoC. Also I am not sure how feaible this approach would be.
>
> Pavan agreed to rewrite his proposal according to that and Petr and myself
> volunteered to co-mentor him.
>
> It was suggested that improving Gitalist
> (http://wiki.catalystframework.org/wiki/gitalist) would be a better choice.
> But this was rejected because Gitalist is too much different from gitweb so it
> could not replace it for many people now using gitweb.
True, I don't think that e.g. git.kernel.org or repo.or.cz could install
Catalyst and Git::PurePerl and use Gitalist instead of gitweb...
P.S. If I remember correctly Gitalist was based out of last gitweb version
before it got bundled with git. I wonder if they caught up to the
modern gitweb features (snapshots, Atom/RSS feeds, basic submodule
support, handling images, incremental blame, grep and pickaxe search,
etc.).
--
Jakub Narebski
Poland
next prev parent reply other threads:[~2010-04-18 0:46 UTC|newest]
Thread overview: 39+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-04-15 4:30 GSoC 2010: "Integrated Web Client for git" proposal Christian Couder
2010-04-18 0:46 ` Jakub Narebski [this message]
2010-04-18 0:59 ` Petr Baudis
2010-04-18 1:24 ` Jakub Narebski
2010-04-18 2:12 ` Petr Baudis
2010-04-18 8:52 ` Pavan Kumar Sunkara
2010-04-18 21:22 ` Jakub Narebski
[not found] ` <w2pe72faaa81004182334xd6fc56d7o31420ca4af867cc2@mail.gmail.com>
2010-04-19 6:35 ` Pavan Kumar Sunkara
2010-04-19 17:00 ` Jakub Narebski
2010-04-19 17:55 ` Pavan Kumar Sunkara
2010-04-19 23:14 ` Jakub Narebski
2010-04-20 12:17 ` Pavan Kumar Sunkara
2010-04-18 22:31 ` Petr Baudis
2010-04-19 6:46 ` Pavan Kumar Sunkara
2010-04-19 6:50 ` Matthieu Moy
2010-04-19 7:23 ` Junio C Hamano
2010-04-19 7:38 ` Pavan Kumar Sunkara
2010-04-19 9:07 ` Petr Baudis
2010-04-19 12:27 ` Matthieu Moy
2010-04-19 12:57 ` Pavan Kumar Sunkara
2010-04-19 13:14 ` Matthieu Moy
2010-04-19 11:57 ` Petr Baudis
2010-04-19 18:10 ` Pavan Kumar Sunkara
2010-04-20 11:47 ` Petr Baudis
2010-04-18 17:50 ` Jakub Narebski
2010-04-18 19:56 ` Petr Baudis
2010-04-19 10:43 ` Jakub Narebski
2010-04-19 11:51 ` Petr Baudis
2010-04-19 18:03 ` Pavan Kumar Sunkara
2010-04-20 12:07 ` Petr Baudis
2010-04-20 18:14 ` Jakub Narebski
2010-04-21 20:49 ` Pavan Kumar Sunkara
2010-04-22 20:25 ` Petr Baudis
2010-04-22 21:15 ` Junio C Hamano
2010-04-23 7:10 ` Petr Baudis
2010-04-23 9:44 ` Junio C Hamano
2010-04-22 21:53 ` Pavan Kumar Sunkara
2010-04-23 5:27 ` Christian Couder
2010-04-23 5:42 ` Pavan Kumar Sunkara
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=201004180246.18263.jnareb@gmail.com \
--to=jnareb@gmail.com \
--cc=catalyst@lists.scsys.co.uk \
--cc=chriscool@tuxfamily.org \
--cc=git@vger.kernel.org \
--cc=gitster@pobox.com \
--cc=pasky@ucw.cz \
--cc=pavan.sss1991@gmail.com \
--cc=sam@vilain.net \
--cc=schacon@gmail.com \
--cc=spearce@spearce.org \
--cc=srabbelier@gmail.com \
/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).