Hello!

On 28/01/2021 20:07, zimoun wrote:
> Doing that, I am thinking of two nice features:
>
>   1. get the parent commits
>   2. show a specific commit
>
> For example,
>
>   guix git log --parents=3142daccbe # => 631e1f33
>   guix git log --show=3142daccbe
>
> so then I can feed “guix time-machine” with 631e1f33 to have
> ’python2-setuptools’ before it breaks.  I am not sure to what “--show”
> would do.
>
> WDYT?

Both features seem cool. I think that '--show' could simply display the
commit message, and other info such as commit author, committer, date
and parents.


> Hum, ’--grep’ seems missing.  I do not remember, is it not working?
> Even slowly?
It's working but I guess I forgot to add an example :-). You could
invoke, for instance
./pre-inst-env guix git log --oneline --grep="htop"
or
./pre-inst-env guix git log --grep="htop" --format=medium

and it should work.


> but “guix system” hard code all the subcommands.  So, maybe hardcoding
> the “log” subcommand is the way to do; with translation in mind, I
> guess.

I see, but I believe it could also be possible to have the translation
in mind, still using an associaton list for %sub-commands, like in the
patch attached. wdyt?


>> Another thing is that the command is a bit slower than 'git log' itself.
>> Thoughts on how that could be improved?
> I will provide more on a separate email.  And review more in details the
> code. :-)
>
>
> Thanks for working on that.  That’s cool! :-)

Great, thank you!


Magali

diff --git a/guix/scripts/git.scm b/guix/scripts/git.scm
index 3b141a622d..dfc4771f44 100644
--- a/guix/scripts/git.scm
+++ b/guix/scripts/git.scm
@@ -25,8 +25,8 @@
   #:export (guix-git))
 
 (define %sub-commands
-  `(("authenticate" . "verify commit signatures and authorizations")
-    ("log". "show Git commit history")))
+  `(("authenticate" . ,(G_ "verify commit signatures and authorizations"))
+    ("log"          . ,(G_ "show Git commit history"))))
 
 (define (show-help)
   (display (G_ "Usage: guix git COMMAND ARGS...
@@ -36,7 +36,7 @@ Operate on Git repositories.\n"))
   (newline)
   (for-each (match-lambda
               ((name . help)
-               (format #t "~13a ~a\n" name help)))
+               (format #t "   ~15a ~a\n" name help)))
             %sub-commands)
   (newline)
   (display (G_ "

Reply via email to