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

Re: Merging strategy for extending Git.pm

From
Junio C Hamano <gitster@pobox.com>
Date
May 30, 2008, 23:20 UTC
Message-ID
<7vabi7gz0g.fsf@gitster.siamese.dyndns.org>
In-Reply-To
<48401A09.6060301@gmail.com>
Lea Wiemann <lewiemann@gmail.com> writes:
Show 6 quoted lines
> 1. I'm working full-time on this, so I might produce patches that
> loosely depend on one another at a peak rate of 2-3 per day.  (I can
> do other project-related stuff while my patches are waiting for
> review, but only so much of course.)  Do you have any experience with
> working with full-time developers on Git?  Do you see problems with my
> potentially high patch frequency?

As long as experienced people on the list review patches, I do not see a problem.

    There seems to be a misconception (not you particularly but some parts
    of the list audience in general) that a review cycle of a patch sent
    to the list is a dialog between the submitter and me.  It is _NOT_.
    If it has rooms for improvements, other people would help you polish
    it, which happens often.  However, if it is very well done, I'd also
    like other people to say so after reviewing more often.
> 2. I'll be changing my own API.  In other words, the API is really
> unstable while I work on this (with the only user of the API being
> Gitweb, which I'll update as I go).  Is that OK for the pu branch?

It does not _have_ to even land on 'pu'. Sending the patches to the list, asking interesting parties to look at them, _and_ having people actually review them is more valuable part.

If your series will become big, I do not mind (re)merging it from time to time in 'pu' to give it a wider exposure. If you want to go this route, you would have a publicly fetchable repository of your own to house your changes (repo.or.cz?).

I do not even mind merging the branch to 'next' if the series is 'next' worthy, but that places heavier responsibility on your part to keep the history of that branch clean.

> 3. I try to be careful with my commits, but it might still cause more
> work for whoever reviews my patches, compared to reviewing larger
> chunks.  (That's because some of the stuff I write might end up being
> deleted or rewritten later.)

One thing you could do, when sending out [PATCH v$n] for the value of $n greater than 1, is to mention what the improvements are since the previous round in the message (typically after the three-dash separator). This helps reviewers who have already seen your previous iteration. The full rationale of the change needs to be kept in the proposed commit log message.

For example, your first patch may look like this:
	Subject: [PATCH] Git.pm: Add rev_parse() sub
	This adds a rev_parse() sub to return the 40-byte object name
        from given "extended SHA-1" expression.
	Signed-off-by: A U Thor <au.thor@example.com>
	---
         <<diffstat and patch>>

Then after Pasky and others suggest improvements, your second message will appear on the list:

	Subject: [PATCH v2] Git.pm: Add parse_rev()
	This adds 'parse_rev()' sub to return the 40-byte object name from
        given "extended SHA-1" expression.  It returns undef if the given
        string is malformed.
	Signed-off-by: A U Thor <au.thor@example.com>
	---
         Changes relative to v1 are:
         
         * Fixed indentation;
         * Use -q to squelch non-fatal errors so that they do not leak
           to the STDERR;
         * Improved in-code documentation.
	 <<diffstat and patch>>

Some people also sends an interdiff between v$n-1 and v$n as a separate message, and it helps reviewing when the change is big.

Previous: Lea WiemannNext: Johannes Schindelin
Message 5 of 32 in “perl/Git.pm: add rev_parse method”
  1. perl/Git.pm: add rev_parse methodLea Wiemann, May 30, 2008
  2. Lea WiemannMay 30, 2008
  3. Petr BaudisMay 30, 2008
  4. Merging strategy for extending Git.pm (was: [PATCH] perl/Git.pm: add rev_parse method)Lea Wiemann, May 30, 2008
  5. Junio C HamanoMay 30, 2008
  6. Johannes SchindelinMay 31, 2008
  7. Lea WiemannMay 31, 2008
  8. Johannes SchindelinMay 31, 2008
  9. Junio C HamanoMay 30, 2008
  10. Petr BaudisMay 30, 2008
  11. perl/Git.pm: add parse_rev methodLea Wiemann, May 30, 2008
  12. Petr BaudisMay 30, 2008
  13. Junio C HamanoMay 30, 2008
  14. Randal L. SchwartzMay 30, 2008
  15. Lea WiemannMay 30, 2008
  16. Randal L. SchwartzMay 30, 2008
  17. Lea WiemannMay 30, 2008
  18. Junio C HamanoMay 30, 2008
  19. Johannes SchindelinMay 31, 2008
  20. Support for old Perl versionsPetr Baudis, May 31, 2008
  21. Johannes SchindelinMay 31, 2008
  22. Petr BaudisMay 30, 2008
  23. perl/Git.pm: add parse_rev methodLea Wiemann, May 31, 2008
  24. perl/Git.pm: add parse_rev methodLea Wiemann, Jun 1, 2008
  25. perl/Git.pm: add parse_rev methodLea Wiemann, Jun 1, 2008
  26. Lea WiemannJun 1, 2008
  27. Miklos VajnaJun 1, 2008
  28. Lea WiemannJun 1, 2008
  29. Junio C HamanoJun 2, 2008
  30. Lea WiemannJun 2, 2008
  31. perl/Git.pm: add get_hash methodLea Wiemann, Jun 1, 2008
  32. perl/Git.pm: add get_hash methodLea Wiemann, Jun 1, 2008

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.