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

Re: Pain points in PRs [was: Re: RFC: Moving git-gui development to GitHub]

From
Son Luong Ngoc <sluongng@gmail.com>
Date
Apr 20, 2021, 07:49 UTC
Message-ID
<YH6Hj2/fGimrLuZ+@C02YX140LVDN.corpad.adbkng.com>
In-Reply-To
<xmqqsg3m7xin.fsf@gitster.g>
Hi Junio,
On Mon, Apr 19, 2021 at 02:52:16PM -0700, Junio C Hamano wrote:
Show 12 quoted lines
> 
> Interesting.
> 
> I recently had a similar experience with Gerrit, where a patch I
> have seen quite a few times on Gerrit at $WORK had an embarrassing
> syntactic issues I did not discover until it hit the public mailing
> list.  It may be different from reviewer to reviewer, but at least
> to me, e-mailed workflow forces me to apply the patch to my tree
> before I can say anything non-trivially intelligent about it and
> once applied to the tree, it actually let's me play with the code
> (like, say, asking the compiler to give its opinion on it).
> 
I think this is very much the point of having a good CI pipeline:
  - Apply patches into tree
  - Compile
  - Run relevant tests

I'm not sure about Github PR, but Gitlab's MR workflow also provide a merge queue implementation(Merge Train) coupled with CI to ensure the merge result is accurately verified against tests.

What might be missing from (most) CI services is a bisect pipeline that help us identify culprit commit that broke the tests, but that could be engineered.

Show 16 quoted lines
> The experience I had with Gerrit at $WORK gave me side-to-side diff
> with context with arbitrary on-demand width, even with per-word
> differences highlighted, and it may be wonderful that I can get all
> of these _without_ having to apply the patch myself, but what it
> gave me stopped there.  There are a lot more things that need to
> happen beyond looking at what changed in the context of the files
> during a review, from grepping in the tree for functions and
> variables used in the patch to see their uses in other parts of the
> system that the patch does not touch, to make various trial merges
> to different topics that are in flight, and Gerrit didn't help me an
> iota, but still gave me a (false) impression that I _did_ review the
> patch fully, when I only have scraped its surface, and the worst
> part of the story was that the UI feld so nice that I didn't even
> realize that I was doing a lot more shoddy job in reviewing than
> what I usually do to e-mailed patches.
> 

Yes, having context beyond the diff is very important for Code Review. This is why I strongly recommend SourceGraph usages to folks I know.

  > https://sourcegraph.com/github.com/git/git/-/blob/builtin/repack.c#L61:13
  > https://sourcegraph.com/github.com/git/git/-/commit/9218c6a40c37023a1f434222d501218cf8157857#diff-01ec5e99d04fb7ba9753f219ab638469R64
(I have no affiliation with SourceGraph, just really enjoy their product)

A mordern codesearch service like sourcegraph could help decorate diff with relevant code intelligent like finding references, definitions and assist with the Code Review process.

Afaik, sourcegraph has been building more integrations with Github and Gitlab, not too sure about Gerrit (but Im sure it's not far reach given their GraphQL API).

So I guess mordern toolings are available for these usecases, but fragmented and subjective to personal workflow.

Regards, Son Luong.

Previous: Junio C HamanoNext: Junio C Hamano
Message 18 of 20 in “RFC: Moving git-gui development to GitHub”
  1. Pratyush YadavOct 23, 2019
  2. Junio C HamanoOct 24, 2019
  3. Birger Skogeng PedersenOct 24, 2019
  4. Denton LiuOct 24, 2019
  5. Pratyush YadavOct 24, 2019
  6. Pratyush YadavOct 24, 2019
  7. Birger Skogeng PedersenOct 25, 2019
  8. Pratyush YadavOct 25, 2019
  9. Elijah NewrenOct 24, 2019
  10. Pratyush YadavOct 25, 2019
  11. Jakub NarebskiOct 26, 2019
  12. Konstantin RyabitsevOct 28, 2019
  13. Elijah NewrenOct 30, 2019
  14. Birger Skogeng PedersenNov 20, 2019
  15. Elijah NewrenNov 20, 2019
  16. Pain points in PRs [was: Re: RFC: Moving git-gui development to GitHub]SZEDER Gábor, Apr 19, 2021
  17. Junio C HamanoApr 19, 2021
  18. Son Luong NgocApr 20, 2021
  19. Junio C HamanoApr 20, 2021
  20. Felipe ContrerasApr 22, 2021

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.