All of lore.kernel.org
 help / color / mirror / Atom feed
* End year project : minimal Git client based on libgit2
@ 2011-05-18 16:42 Marc Pegon
  2011-05-19  6:18 ` Andreas Ericsson
  0 siblings, 1 reply; 3+ messages in thread
From: Marc Pegon @ 2011-05-18 16:42 UTC (permalink / raw)
  To: git

Hello everyone. We are a team of four students from a French school of
engineering (Ensimag: http://ensimag.grenoble-inp.fr/). To end the
school year, we are supposed to work on a four-week full-time project,
under the supervision of Matthieu Moy, who has been following Git's
development for quite a few years now. We thought it would be
interesting to contribute to git/libgit2. We are especially interested
in one of the GSoC2011 ideas : Build a minimal Git client based on
libgit2 (http://git.wiki.kernel.org/index.php/SoC2011Ideas#Build_a_minimal_Git_client_based_on_libgit2)

We started by taking a look at libgit2 API and Git source code, and we
have already begun to write some (quick and dirty) code.
We would like to know more about your expectations around the
"minimal" git client. What are the key features to implement ?
According to the GSoC proposal, we should implement some high level
functionalities (push, commit, branch...). Perhaps we should
concentrate on more "plumbing" commands ?

Regards,

Bettaoui Nassima
Geissler Romain
Glesser David
Pegon Marc.

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: End year project : minimal Git client based on libgit2
  2011-05-18 16:42 End year project : minimal Git client based on libgit2 Marc Pegon
@ 2011-05-19  6:18 ` Andreas Ericsson
  2011-05-19 16:15   ` Romain Geissler
  0 siblings, 1 reply; 3+ messages in thread
From: Andreas Ericsson @ 2011-05-19  6:18 UTC (permalink / raw)
  To: Marc Pegon; +Cc: git

On 05/18/2011 06:42 PM, Marc Pegon wrote:
> Hello everyone. We are a team of four students from a French school of
> engineering (Ensimag: http://ensimag.grenoble-inp.fr/). To end the
> school year, we are supposed to work on a four-week full-time project,
> under the supervision of Matthieu Moy, who has been following Git's
> development for quite a few years now. We thought it would be
> interesting to contribute to git/libgit2. We are especially interested
> in one of the GSoC2011 ideas : Build a minimal Git client based on
> libgit2 (http://git.wiki.kernel.org/index.php/SoC2011Ideas#Build_a_minimal_Git_client_based_on_libgit2)
> 

Cool project :)

> We started by taking a look at libgit2 API and Git source code, and we
> have already begun to write some (quick and dirty) code.
> We would like to know more about your expectations around the
> "minimal" git client. What are the key features to implement ?
> According to the GSoC proposal, we should implement some high level
> functionalities (push, commit, branch...). Perhaps we should
> concentrate on more "plumbing" commands ?
> 

If you can make the plumbing commands work it should be trivial to
script the other tools on top of the plumbing.

Otoh, coding up the commands currently implemented as scripts in C
with libgit2 as backend would increase the chance of acceptance into
git.git proper, since you'd then be doing something worthwhile for
the git core.

Then again, creating bindings into other languages and writing up
the minimal git in python or some such would also be extremely
useful and worthwhile, and probably faster than writing the minimal
git from scratch in C as well.

-- 
Andreas Ericsson                   andreas.ericsson@op5.se
OP5 AB                             www.op5.se
Tel: +46 8-230225                  Fax: +46 8-230231

Considering the successes of the wars on alcohol, poverty, drugs and
terror, I think we should give some serious thought to declaring war
on peace.

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: End year project : minimal Git client based on libgit2
  2011-05-19  6:18 ` Andreas Ericsson
@ 2011-05-19 16:15   ` Romain Geissler
  0 siblings, 0 replies; 3+ messages in thread
From: Romain Geissler @ 2011-05-19 16:15 UTC (permalink / raw)
  To: git

Hello,

It seems that most of the currently scripted commands can't be implemented with libgit2 as it's still not mature enough to handle it (eg the whole merge part is still missing), though we might have missed something.

Thus we've chosen to first focus on two simple plumbings: commit-tree and cat-file as there is the material for it in libgit2 and the command signature is restricted to only a few parameters. When it's done, we'll try to compare the efficiency of this partial port (works well and quickly). Thanks to that background, it might be easier to move on other plumbings.

Romain Geissler

(Sorry for answering you directly, i should have checked the mail recipient before sending it !)

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2011-05-19 16:15 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-05-18 16:42 End year project : minimal Git client based on libgit2 Marc Pegon
2011-05-19  6:18 ` Andreas Ericsson
2011-05-19 16:15   ` Romain Geissler

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.