diff options
Diffstat (limited to 'doc/contributing.texi')
-rw-r--r-- | doc/contributing.texi | 86 |
1 files changed, 71 insertions, 15 deletions
diff --git a/doc/contributing.texi b/doc/contributing.texi index b8adc169d8..938c8bfdb1 100644 --- a/doc/contributing.texi +++ b/doc/contributing.texi @@ -2021,11 +2021,12 @@ a subject, if your patch is to be applied on a branch other than @code{master}, say @code{core-updates}, specify it in the subject like @samp{[PATCH core-updates] @dots{}}. -You may use your email client or the @command{git send-email} command -(@pxref{Sending a Patch Series}). We prefer to get patches in plain -text messages, either inline or as MIME attachments. You are advised to -pay attention if your email client changes anything like line breaks or -indentation which could potentially break the patches. +You may use your email client, the @command{git send-email} command +(@pxref{Sending a Patch Series}) or the @command{mumi send-email} +command (@pxref{Debbugs User Interfaces}). We prefer to get patches in +plain text messages, either inline or as MIME attachments. You are +advised to pay attention if your email client changes anything like line +breaks or indentation which could potentially break the patches. Expect some delay when you submit your very first patch to @email{guix-patches@@gnu.org}. You have to wait until you get an @@ -2394,10 +2395,15 @@ To view discussions related to issue number @var{n}, go to @subsubsection Command-line interface +@cindex mumi CLI +@cindex mumi am +@cindex mumi compose +@cindex mumi send-email +@cindex mumi www Mumi also comes with a command-line interface that can be used to search -existing issues, open new issues and send patches. You do not need to -use Emacs to use the mumi command-line client. You interact with it -only on the command-line. +existing issues, open new issues, compose replies, apply and send +patches. You do not need to use Emacs to use the mumi command-line +client. You interact with it only on the command-line. To use the mumi command-line interface, navigate to a local clone of the Guix git repository, and drop into a shell with mumi, git and @@ -2434,8 +2440,61 @@ Pick an issue and make it the "current" issue. opened on 24 Jan 09:42 Z by Efraim Flashner @end example -Once an issue is the current issue, you can easily create and send -patches to it using +Once an issue is the current issue, you can open the issue in a web +browser, compose replies, apply patches, send patches, etc. with short +succinct commands. + +Open the issue in your web browser using + +@example +~/guix [env]$ mumi www +@end example + +Compose a reply using + +@example +~/guix [env]$ mumi compose +@end example + +Compose a reply and close the issue using + +@example +~/guix [env]$ mumi compose --close +@end example + +@command{mumi compose} opens your mail client by passing @samp{mailto:} +URIs to @command{xdg-open}. So, you need to have @command{xdg-open} set +up to open your mail client correctly. + +Apply the latest patchset from the issue using + +@example +~/guix [env]$ mumi am +@end example + +You may also apply a patchset of a specific version (say, v3) using + +@example +~/guix [env]$ mumi am v3 +@end example + +Or, you may apply a patch from a specific e-mail message. For example, +to apply the patch from the 4th message (message index starts from 0), +run + +@example +~/guix [env]$ mumi am @@4 +@end example + +@command{mumi am} is a wrapper around @command{git am}. You can pass +@command{git am} arguments to it after a @samp{--}. For example, to add +a Signed-off-by trailer, run + +@example +~/guix [env]$ mumi am -- -s +@end example + +Create and send patches to the issue using @example ~/guix [env]$ git format-patch origin/master @@ -2452,11 +2511,8 @@ To open a new issue, run ~/guix [env]$ mumi new @end example -and send patches - -@example -~/guix [env]$ mumi send-email foo.patch bar.patch -@end example +and send an email (using @command{mumi compose}) or patches (using +@command{mumi send-email}). @command{mumi send-email} is really a wrapper around @command{git send-email} that automates away all the nitty-gritty of sending patches. |