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

Re: GSoC questions

From
Jonathan Nieder <jrnieder@gmail.com>
Date
Mar 28, 2011, 00:11 UTC
Message-ID
<20110328001152.GA11294@elie>
In-Reply-To
<AANLkTinTM8hQpcahGgDyB4UJvGbdN0xyp65wL5PDQGKa@mail.gmail.com>
Hi,
Alexandru Sutii wrote:
Show 8 quoted lines
> I am interested in two projects from your list:
> - Build a minimal Git client based on libgit2
> - Port Git to Android
> My questions are:
> - How important are these projects for the community?
> - Should I provide a patch in order to prove that I am suited for one of these
> projects?
>   If so, what specifically should I implement?

Thanks for writing. The "minimal Git client" task seems like a popular one. Luckily that is not a fatal problem --- git has many subcommands, so even if every proposal is about that, it could be possible to subdivide the work and produce something interesting.

Some reading matter:
 http://thread.gmane.org/gmane.comp.version-control.git/99608/focus=99682
 http://thread.gmane.org/gmane.comp.version-control.git/169498/focus=169517
 http://thread.gmane.org/gmane.comp.version-control.git/169498/focus=169762
 http://thread.gmane.org/gmane.comp.version-control.git/170032/focus=170076

Is there some particular part of git functionality you would like to focus on (history creation, history mining, object store maintenance, configuration, transport)? The list of low-level commands (plumbing) in the git manual might be a good place to get an idea of the scope.

The ideas page mentions areas in which libgit2 functionality is incomplete --- depending on your interest, you might want to focus on one of these (so the project would be to add functionality to libgit2 as well as using it) or to steer clear of them (to focus on functionality libgit2 already has).

So, to make a long story short: there is something sneaky about us presenting this idea, since there is so much room for choice. As your project becomes more precise it should be possible for people on the list to give more detailed advice.

Cc-ing the libgit2 list and Jeff King for more hints.

As for porting git to Android: that idea is less concrete to me. A native Android app would presumably be in Java, so most likely your best bet is to talk to someone involved in the JGit project[1].

Another note. Please feel free to venture beyond projects listed on the ideas page. For example the 2010 ideas page contains some gems:

 https://git.wiki.kernel.org/index.php/SoC2010Ideas#Several_small_projects_improving_msysGit
as does the 2008 page if you can get Nicolas Pitre on board :)
 https://git.wiki.kernel.org/index.php/SoC2008Ideas#Implement_pack_v4.2Fv5_for_higher_compression

Really, if you name any git-related topic you're interested in, chances are we can come up together with something valuable and interesting to work on in that area.

Lastly, as far as patches go: yes, it would be excellent (and it would show initiative) to offer an experience of what it is like to work with you (if you end up finding time for this).

Git may misbehave; or while getting up to speed on some aspect of its behavior you may find some documentation confusing; or you may wonder, "why is this code doing such a slow/unreliable/otherwise insane thing?" When the moment comes, look straight to Documentation/SubmittingPatches and it will tell what to do. :)

Good luck with whatever project you decide, Jonathan

[1] http://wiki.eclipse.org/Google_Summer_of_Code_2011_Ideas#Ideas_submission http://eclipse.org/jgit/developers/

Previous: Alexandru SutiiNext: Jeff King
Message 2 of 12 in “GSoC questions”
  1. Alexandru SutiiMar 27, 2011
  2. Jonathan NiederMar 28, 2011
  3. Jeff KingMar 28, 2011
  4. Alexandru SutiiMar 28, 2011
  5. Vicent MartiMar 28, 2011
  6. Alexandru SutiiMar 31, 2011
  7. Motiejus JakštysMar 31, 2011
  8. Vincent van RavesteijnMar 31, 2011
  9. Alexandru SutiiMar 31, 2011
  10. Jeff KingMar 31, 2011
  11. Jeff KingMar 31, 2011
  12. Vincent van RavesteijnApr 1, 2011

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.