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

Re: Google Summer of Code 2013 (GSoC13)

From
Ramkumar Ramachandra <artagnon@gmail.com>
Date
Feb 18, 2013, 20:44 UTC
Message-ID
<CALkWK0mKZLotuu7pEM_3Of3i6JzU12QV_pHxOZTUr22TOq3PeQ@mail.gmail.com>
In-Reply-To
<20130218193424.GC3234@elie.Belkin>
Jonathan Nieder wrote:
Show 16 quoted lines
> Hi,
>
> Jeff King wrote:
>
>> I will do it again, if people feel strongly about Git being a part of
>> it. However, I have gotten a little soured on the GSoC experience. Not
>> because of anything Google has done; it's a good idea, and I think they
>> do a fine of administering the program. But I have noticed that the work
>> that comes out of GSoC the last few years has quite often not been
>> merged, or not made a big impact in the codebase, and nor have the
>> participants necessarily stuck around.
>
> I think that if we can commit enough time to mentor well it's
> worthwhile.  Even such a negative result is useful, since it can teach
> us how good or poor we are at bringing new contributors in and what
> parts of that process need more work.

The point is that we must be willing to spend time learning what went wrong the previous summer, and how to improve upon it. There's no point in doing a lather-rinse-repeat after many consecutive failures.

> Some potential projects (unfiltered --- please take them with a grain
> of salt):
>
>  - cross-compilable git
Why, exactly?  Git for embedded devices?
>  - incorporation of the cgit web interface, or formalizing a subset of
>    libgit.a to export as a stable library to it
I didn't understand this: you want cgit in-tree?
>  - moving forward on a project that was the subject of a previous
>    gsoc project: line-level logging, "rebase --interactive" on top of
>    sequencer, usable svn remote helper

I can't see a roadmap for gradually phasing out `rebase -i` as more and more of its functionality is built into the sequencer. Would you start by using `cherry-pick --continue` in the special case of consecutive `pick` or `revert` operations (yuck)? The sequencer currently has a continuation logic that we can leverage, but how will it call out to shell functions to do specific tasks (like `fixup`, which is not yet implemented)? Really, the only way I see is to duplicate the functionality of `rebase -i` in C, and throw away the shell script when we're sure we're done.

For usable svn remote helper, the major TODO is a git -> svn bridge. My previous effort (which was a long time) was stalled because we needed a way to persist blobs of text referenced by marks, and retrieve them on demand. Building this bridge is hard enough already, and I think we should just focus on an independent git -> svn bridge to put into contrib/svn-fi as a deliverable. It doesn't have to have anything to do with remote helpers at all.

>  - drag-and-drop cherry-pick in gitk

You expect someone to write Tcl/Tk today? Do a `git log gitk-git/` and tell me how many people are writing it.

Show 6 quoted lines
>  - a sub-library of code shared with libgit2 (might be hard because
>    our notions of strings are different :().
>
>  - assimilating the distro builds: "make deb-pkg", "make rpm-pkg",
>    etc along the same lines as the linux kernel's script/package/,
>    to help people get recent git installed when they want it

Overkill. I just symlink to bin-wrapper/git from a place high up in my $PATH. If anything, we should be making it easier for ourselves to run different versions of git right from $HOME, much like rbenv. System-wide installs are taken care of by the distribution package managers, and I doubt they need any help from us.

>  - collaborative notes editing: fix the default notes refspec,
>    make sure the "notes pull" workflow works well and is documented
>    well, offer an easy way to hide private notes after the fact
>    without disrupting public history

I personally don't care for notes much, because I can't see practical usecases. I'd much rather fix something that's much more widely used and broken: submodules.

Previous: Christian CouderNext: Jeff King
Message 26 of 47 in “Google Summer of Code 2013 (GSoC13)”
  1. Thomas RastFeb 18, 2013
  2. Jeff KingFeb 18, 2013
  3. Ramkumar RamachandraFeb 18, 2013
  4. Jeff KingFeb 18, 2013
  5. Ramkumar RamachandraFeb 18, 2013
  6. Jonathan NiederFeb 18, 2013
  7. Thomas RastFeb 18, 2013
  8. Ramkumar RamachandraFeb 19, 2013
  9. Jeff KingFeb 18, 2013
  10. Ramkumar RamachandraFeb 19, 2013
  11. Thomas RastFeb 18, 2013
  12. Jens LehmannFeb 18, 2013
  13. Junio C HamanoFeb 18, 2013
  14. Ramkumar RamachandraFeb 19, 2013
  15. Jonathan NiederFeb 19, 2013
  16. Ramkumar RamachandraFeb 19, 2013
  17. Thomas RastFeb 19, 2013
  18. Junio C HamanoFeb 19, 2013
  19. Thomas RastFeb 19, 2013
  20. Junio C HamanoFeb 19, 2013
  21. Ramkumar RamachandraFeb 19, 2013
  22. Junio C HamanoFeb 19, 2013
  23. Jonathan NiederFeb 18, 2013
  24. Jens LehmannFeb 18, 2013
  25. Christian CouderFeb 20, 2013
  26. Ramkumar RamachandraFeb 18, 2013
  27. Jeff KingFeb 18, 2013
  28. Junio C HamanoFeb 18, 2013
  29. Potential GSoC13 projects (Re: Google Summer of Code 2013 (GSoC13))Jonathan Nieder, Feb 18, 2013
  30. Duy NguyenFeb 19, 2013
  31. Jeff KingFeb 18, 2013
  32. Jonathan NiederFeb 18, 2013
  33. Shawn PearceFeb 20, 2013
  34. Christian CouderFeb 20, 2013
  35. Matthieu MoyFeb 20, 2013
  36. Thomas RastFeb 21, 2013
  37. Michael SchubertFeb 20, 2013
  38. Carlos Martín NietoFeb 21, 2013
  39. Florian AchleitnerFeb 25, 2013
  40. Junio C HamanoFeb 25, 2013
  41. Thomas RastFeb 18, 2013
  42. Ronan KeryellFeb 18, 2013
  43. Thomas RastFeb 18, 2013
  44. Ramkumar RamachandraFeb 18, 2013
  45. Thomas RastFeb 18, 2013
  46. Duy NguyenFeb 19, 2013
  47. Jaseem AbidFeb 26, 2013

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.