Re: [GSoC] A small survey + My Git Blog, week 10

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Atharva,

Le 2021-07-25 à 08:22, Atharva Raykar a écrit :
Hello all,

Week 10 of my Git blog can be found here:
https://atharvaraykar.me/gitnotes/week10

As for the "survey part", jump to the section here:
https://atharvaraykar.me/gitnotes/week10#the-mailing-list-developer-workflow

...feel free to reply in this thread.


Quoting your "survey" questions:

What tools, systems and workflows do you find valuable in your
day-to-day work? In particular I’d be happy getting insights like:

* Any strategy or approach to work, kind of like the example I quoted
  above
* Any scripts and tools that assist you
* Opinionated handling of multiple in-flight series and methods to
  approaching reviews
* Atharva, you are overthinking this! I just use a straightforward {
  editor + MUA + git } stack and go with the flow!

I'm a small-time contributor, but I do read the mailing list regularly.

As such, I'm not subscribed to the list; I read it on lore.kernel.org
or public-inbox.org (nicer colors!). The UI of public-inbox is very clear
with respect to threading, and the front page also lists messages in
a way that it is easy to quickly see what's new.

When I want to reply to a message that I read on the list, I import it
into a "Git mailing list" IMAP folder in my Gmail account so that I can answer
using my mail client (Thunderbird for now since Apple Mail has been reliably
crashing at launch for the last months) and quote relevant parts of the message.

To import a thread from the mailing list I use a combination of the excellent
'b4' tool, developed by the kernel community [1], and 'git imap-send'. It's
basically this:

$ git config --get alias.ml-imap
!f() { b4 mbox -o- $1 | git imap-send; }; f

This sometimes does not work if some messages in the thread were not created
using  'git format-patch', since 'git imap-send' expects the "From", "Date"
and "Subject" headers in a certain order. So I created a small Python script,
'git in', for this case [2].

For small and simple reviews, I also simply import the patches into Thunderbird
and reply inline. If I want to do a more in-depth review and browse the code as
modified by a series, I fetch the contributor's branch and take a look locally.
More often than not though people do not provide a 'git fetch'-ready link in their
cover letter. So in that case I use 'b4 am' [1] to fetch the latest version of a series
and apply it locally. Before 'b4' was created I used 'git pw' [3], a command line
client for Patchwork, and the Git patchwork instance at [4], but these days I prefer
'b4' as it's more closely integrated with public-inbox.

For my own contribution I use Gitgitgdaget [5], it handles almost everything needed
for git.git contributions:  keeping track of the CC list for
me, updating the re-roll count,  adding the In-Reply-To header such that subsequent
versions of the series are sent as a response to the cover letter of the previous version,
generating a range-diff against the previous version, providing a 'git fetch'-ready tag,
commenting on the PR when the series is mentioned in Junio's "What's cooking", etc.

Some things it does not support are: sending a patch as a response to some random
mail on the list, which is sometimes useful, reading the commit notes to generate
in-patch commentaries [6], customizing the diff generated by 'format-patch'.
Other things are listed at [7].

Recently I've also been using only the terminal with Gitgitgadget:
I use 'git branch --edit-description' to write my cover letter,
and then use the 'gh' GitHub CLI [8] to open my PR:

$ git config --get-regexp alias.desc*
alias.desc-title !git config branch.$(git branch --show-current).description | head -1
alias.desc-body !git config branch.$(git branch --show-current).description | tail -n+3
$ gh pr create --title "$(git desc-title)" --body "$(git desc-body)" --head phil-blain:$(git branch --show-current)

I hope this provides a different perspective!

Cheers,
Philippe.


[1] https://pypi.org/project/b4/
[2] https://gist.github.com/phil-blain/d350e91959efa6e7afce60e74bf7e4a8
[3] https://patchwork.readthedocs.io/projects/git-pw/en/latest/usage/
[4] https://patchwork.kernel.org/project/git/list/
[5] https://gitgitgadget.github.io/
[6] https://github.com/gitgitgadget/gitgitgadget/issues/173
[7] https://github.com/gitgitgadget/gitgitgadget/issues
[8] https://cli.github.com/



[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]

  Powered by Linux