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

Re: GSOC idea: build in scripts and cleanups

From
Jeff King <peff@peff.net>
Date
Mar 28, 2011, 14:21 UTC
Message-ID
<20110328142121.GB14763@sigill.intra.peff.net>
In-Reply-To
<201103281055.23578.robert.david.public@gmail.com>
On Mon, Mar 28, 2011 at 10:55:22AM +0200, Robert David wrote:
Show 12 quoted lines
> > If I were considering cleaning up and porting add--interactive to C, I
> > think I would probably start with just porting the "-p" patch loop
> > first. I think it's the part that most people use, and most callers
> > don't support a generic "-i" but just the "-p" interface (e.g., you can
> > do "git add -i" or "git add -p", but only "git checkout -p"). And that
> > cuts down the size of the task somewhat.
> 
> I have read all the code in git-add--interactive. If I understand that 
> correct, you mean to separate -i and -p int two different commands.
> And make the -p option more like the -i (but just only for patching).
> 
> And consequently port them to C. 
Sort of. The approach I would take would be:
  1. write patch loop code in C (i.e., the code that is going to replace
     the --patch code path from git-add--interactive.perl), and make it
     call-able from within other C programs
  2. write a new command, "git-add--interactive-patch", that behaves
     like "git-add--interactive --patch", but is based on your new C
     code.
  3. Port C callers of "git-add--interactive --patch" to the new
     interface from (1). This should be "add -p", "checkout -p", and
     "reset -p".
  4. Port non-C callers of "git-add--interactive --patch" to the new
     command from (2). This should be git-add--interactive.perl and
     git-stash.sh.
  5. Remove the perl patch code in git-add--interactive.perl; you can
     replace it with a call to git-add--interactive-patch.

But that doesn't mean that's the way it has to be done. Just what I would do. :)

Show 5 quoted lines
> > As far as cleanup versus features, I think Thomas would have to comment
> > on that. He is the one who did the most work on patch-mode, and
> > therefore the one who most thinks it needs cleaned up. :)
> 
> Is Thomas going to be a mentor in this task?
I hope so. I can also co-mentor if it helps.
-Peff
Previous: Robert DavidNext: Thomas Rast
Message 5 of 20 in “GSOC idea: build in scripts and cleanups”
  1. Robert DavidMar 26, 2011
  2. Jonathan NiederMar 26, 2011
  3. Jeff KingMar 26, 2011
  4. Robert DavidMar 28, 2011
  5. Jeff KingMar 28, 2011
  6. Thomas RastMar 30, 2011
  7. Robert DavidMar 30, 2011
  8. Robert DavidApr 3, 2011
  9. Robert DavidApr 4, 2011
  10. Junio C HamanoApr 4, 2011
  11. Robert DavidApr 4, 2011
  12. Jeff KingApr 5, 2011
  13. Junio C HamanoApr 5, 2011
  14. Jeff KingApr 5, 2011
  15. Robert DavidApr 5, 2011
  16. Robert DavidApr 7, 2011
  17. Junio C HamanoApr 7, 2011
  18. Robert DavidApr 8, 2011
  19. Jonathan NiederApr 11, 2011
  20. Robert DavidApr 17, 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.