* git show
@ 2019-11-01 13:51 Lars Ingebrigtsen
2019-11-01 14:01 ` Eli Zaretskii
` (2 more replies)
0 siblings, 3 replies; 24+ messages in thread
From: Lars Ingebrigtsen @ 2019-11-01 13:51 UTC (permalink / raw)
To: emacs-devel
The only vc thing I find myself leaving Emacs for to do is "git show
<id>" (when people refer to a specific id in a bug report, for
instance). I've looked through the vc-dir command set, and I can't find
anything like that.
Is that command missing from vc-dir?
--
(domestic pets only, the antidote for overdose, milk.)
bloggy blog: http://lars.ingebrigtsen.no
^ permalink raw reply [flat|nested] 24+ messages in thread
* Re: git show
2019-11-01 13:51 git show Lars Ingebrigtsen
@ 2019-11-01 14:01 ` Eli Zaretskii
2019-11-01 14:06 ` Lars Ingebrigtsen
[not found] ` <dc6ccd02-c637-f8ca-c025-7860421809af@yandex.ru>
2019-11-02 18:42 ` Juri Linkov
2 siblings, 1 reply; 24+ messages in thread
From: Eli Zaretskii @ 2019-11-01 14:01 UTC (permalink / raw)
To: Lars Ingebrigtsen; +Cc: emacs-devel
> From: Lars Ingebrigtsen <larsi@gnus.org>
> Date: Fri, 01 Nov 2019 14:51:28 +0100
>
> The only vc thing I find myself leaving Emacs for to do is "git show
> <id>" (when people refer to a specific id in a bug report, for
> instance). I've looked through the vc-dir command set, and I can't find
> anything like that.
>
> Is that command missing from vc-dir?
Type "C-x v L", then RET on a line for the commit you are interested
in. If you want to see the diffs, press D after that.
^ permalink raw reply [flat|nested] 24+ messages in thread
* Re: git show
2019-11-01 14:01 ` Eli Zaretskii
@ 2019-11-01 14:06 ` Lars Ingebrigtsen
2019-11-01 15:57 ` Stefan Monnier
0 siblings, 1 reply; 24+ messages in thread
From: Lars Ingebrigtsen @ 2019-11-01 14:06 UTC (permalink / raw)
To: Eli Zaretskii; +Cc: emacs-devel
Eli Zaretskii <eliz@gnu.org> writes:
> Type "C-x v L", then RET on a line for the commit you are interested
> in. If you want to see the diffs, press D after that.
It's not very convenient -- if the commit is old, I have to hit either
"Show 2X entries" or "Show unlimited entries", which are slow.
Which means that it's faster to just go to a terminal and say "git
show".
But I take this to mean that there's no command like this implemented
already? If so, I can take a whack at implementing it. I'm guessing
that most SCMs have a command to show a specific commit based on an ID.
--
(domestic pets only, the antidote for overdose, milk.)
bloggy blog: http://lars.ingebrigtsen.no
^ permalink raw reply [flat|nested] 24+ messages in thread
* Re: git show
2019-11-01 14:06 ` Lars Ingebrigtsen
@ 2019-11-01 15:57 ` Stefan Monnier
2019-11-02 8:01 ` Steinar Bang
2019-11-02 14:29 ` git show Lars Ingebrigtsen
0 siblings, 2 replies; 24+ messages in thread
From: Stefan Monnier @ 2019-11-01 15:57 UTC (permalink / raw)
To: Lars Ingebrigtsen; +Cc: Eli Zaretskii, emacs-devel
> It's not very convenient -- if the commit is old, I have to hit either
> "Show 2X entries" or "Show unlimited entries", which are slow.
It's worse: if the commit is not in the current branch it won't be
listed at all, and `C-x v L` doesn't let you show the log corresponding
to another branch.
If `C-x v l` accepted a C-u to specify the "revision" for which to show
the log, then it would solve both problems: you could get the log
of other branches and you could see the commit message and the diff of
a specific REVision with:
C-u C-x v l <REV> RET
followed by hitting `D` on the first element to see the diff
-- Stefan
^ permalink raw reply [flat|nested] 24+ messages in thread
* Re: git show
2019-11-01 15:57 ` Stefan Monnier
@ 2019-11-02 8:01 ` Steinar Bang
2019-11-02 11:00 ` Dmitry Gutov
` (2 more replies)
2019-11-02 14:29 ` git show Lars Ingebrigtsen
1 sibling, 3 replies; 24+ messages in thread
From: Steinar Bang @ 2019-11-02 8:01 UTC (permalink / raw)
To: emacs-devel
>>>>> Stefan Monnier <monnier@iro.umontreal.ca>:
>> It's not very convenient -- if the commit is old, I have to hit either
>> "Show 2X entries" or "Show unlimited entries", which are slow.
> It's worse: if the commit is not in the current branch it won't be
> listed at all, and `C-x v L` doesn't let you show the log corresponding
> to another branch.
And don't forget this, which was never really fixed:
https://debbugs.gnu.org/cgi/bugreport.cgi?bug=8756
Ie. history is not tracked across moves/renames.
Would it be OK to reopen this bug? Alternatively create a new one?
(whatever is best...?)
^ permalink raw reply [flat|nested] 24+ messages in thread
* Re: git show
2019-11-02 8:01 ` Steinar Bang
@ 2019-11-02 11:00 ` Dmitry Gutov
2019-11-02 18:45 ` Juri Linkov
2019-11-02 18:48 ` dired-vc-rename (was: git show) Juri Linkov
2 siblings, 0 replies; 24+ messages in thread
From: Dmitry Gutov @ 2019-11-02 11:00 UTC (permalink / raw)
To: emacs-devel
On 02.11.2019 10:01, Steinar Bang wrote:
>> It's worse: if the commit is not in the current branch it won't be
>> listed at all, and `C-x v L` doesn't let you show the log corresponding
>> to another branch.
>
> And don't forget this, which was never really fixed:
> https://debbugs.gnu.org/cgi/bugreport.cgi?bug=8756
It seems unrelated, but.
> Ie. history is not tracked across moves/renames.
>
> Would it be OK to reopen this bug? Alternatively create a new one?
> (whatever is best...?)
I think it's open, isn't it? The last comment proposes a patch, but with
some known problems. Help welcome solving those.
^ permalink raw reply [flat|nested] 24+ messages in thread
* Re: git show
2019-11-02 8:01 ` Steinar Bang
2019-11-02 11:00 ` Dmitry Gutov
@ 2019-11-02 18:45 ` Juri Linkov
2019-11-03 14:32 ` Lars Ingebrigtsen
2019-11-05 7:02 ` Steinar Bang
2019-11-02 18:48 ` dired-vc-rename (was: git show) Juri Linkov
2 siblings, 2 replies; 24+ messages in thread
From: Juri Linkov @ 2019-11-02 18:45 UTC (permalink / raw)
To: emacs-devel
> And don't forget this, which was never really fixed:
> https://debbugs.gnu.org/cgi/bugreport.cgi?bug=8756
>
> Ie. history is not tracked across moves/renames.
>
> Would it be OK to reopen this bug? Alternatively create a new one?
> (whatever is best...?)
I don't know why this bug is still not closed - a new option
vc-git-print-log-follow was added long ago.
^ permalink raw reply [flat|nested] 24+ messages in thread
* dired-vc-rename (was: git show)
2019-11-02 8:01 ` Steinar Bang
2019-11-02 11:00 ` Dmitry Gutov
2019-11-02 18:45 ` Juri Linkov
@ 2019-11-02 18:48 ` Juri Linkov
2019-11-03 14:33 ` dired-vc-rename Lars Ingebrigtsen
2 siblings, 1 reply; 24+ messages in thread
From: Juri Linkov @ 2019-11-02 18:48 UTC (permalink / raw)
To: emacs-devel
> Ie. history is not tracked across moves/renames.
BTW, I wonder how in Dired everyone moves/renames
files in a directory under version control?
When using simply R in Dired to move vc files,
this messes everything up: vc-dired thinks that
the file with an old name is removed,
and a new file is created unregistered.
I'm using such patch, and it works well.
Should this be installed?
diff --git a/lisp/dired-aux.el b/lisp/dired-aux.el
index b1521ecf01..13a2d8cd6b 100644
--- a/lisp/dired-aux.el
+++ b/lisp/dired-aux.el
@@ -1635,11 +1635,24 @@ dired-copy-file-recursive
dired-create-files-failures)
(dired-log "Can't set date on %s:\n%s\n" from err))))))
+(defcustom dired-vc-rename-file nil
+ "Whether Dired should register file renaming in underlying vc.
+If nil, use default `rename-file'.
+If non-nil and the renamed files are under version control,
+rename them using `vc-rename-file'."
+ :type '(choice (const :tag "Use rename-file" nil)
+ (const :tag "Use vc-rename-file" t))
+ :group 'dired
+ :version "27.1")
+
;;;###autoload
(defun dired-rename-file (file newname ok-if-already-exists)
(dired-handle-overwrite newname)
(dired-maybe-create-dirs (file-name-directory newname))
- (rename-file file newname ok-if-already-exists) ; error is caught in -create-files
+ (if (and dired-vc-rename-file (vc-backend file))
+ (vc-rename-file file newname)
+ ;; error is caught in -create-files
+ (rename-file file newname ok-if-already-exists))
;; Silently rename the visited file of any buffer visiting this file.
(and (get-file-buffer file)
(with-current-buffer (get-file-buffer file)
^ permalink raw reply related [flat|nested] 24+ messages in thread
* Re: git show
2019-11-01 15:57 ` Stefan Monnier
2019-11-02 8:01 ` Steinar Bang
@ 2019-11-02 14:29 ` Lars Ingebrigtsen
2019-11-02 18:16 ` Stefan Monnier
1 sibling, 1 reply; 24+ messages in thread
From: Lars Ingebrigtsen @ 2019-11-02 14:29 UTC (permalink / raw)
To: Stefan Monnier; +Cc: Eli Zaretskii, emacs-devel
Stefan Monnier <monnier@iro.umontreal.ca> writes:
> It's worse: if the commit is not in the current branch it won't be
> listed at all, and `C-x v L` doesn't let you show the log corresponding
> to another branch.
>
> If `C-x v l` accepted a C-u to specify the "revision" for which to show
> the log, then it would solve both problems: you could get the log
> of other branches and you could see the commit message and the diff of
> a specific REVision with:
>
> C-u C-x v l <REV> RET
> followed by hitting `D` on the first element to see the diff
That sounds like a nice command indeed, but I still just want a
convenient way to display a single commit when somebody says "fixed in
<id>" in an email. :-)
--
(domestic pets only, the antidote for overdose, milk.)
bloggy blog: http://lars.ingebrigtsen.no
^ permalink raw reply [flat|nested] 24+ messages in thread
* Re: git show
2019-11-02 14:29 ` git show Lars Ingebrigtsen
@ 2019-11-02 18:16 ` Stefan Monnier
2019-11-03 15:11 ` Lars Ingebrigtsen
0 siblings, 1 reply; 24+ messages in thread
From: Stefan Monnier @ 2019-11-02 18:16 UTC (permalink / raw)
To: Lars Ingebrigtsen; +Cc: Eli Zaretskii, emacs-devel
> That sounds like a nice command indeed, but I still just want a
> convenient way to display a single commit when somebody says "fixed in
> <id>" in an email. :-)
Au diable l'avarice: let's have both!
Stefan
^ permalink raw reply [flat|nested] 24+ messages in thread
* Re: git show
2019-11-02 18:16 ` Stefan Monnier
@ 2019-11-03 15:11 ` Lars Ingebrigtsen
0 siblings, 0 replies; 24+ messages in thread
From: Lars Ingebrigtsen @ 2019-11-03 15:11 UTC (permalink / raw)
To: Stefan Monnier; +Cc: Eli Zaretskii, emacs-devel
Stefan Monnier <monnier@iro.umontreal.ca> writes:
>> That sounds like a nice command indeed, but I still just want a
>> convenient way to display a single commit when somebody says "fixed in
>> <id>" in an email. :-)
>
> Au diable l'avarice: let's have both!
:-)
It seems like the general feeling is that this would be useful to have
(even if there are some commands that are adjacent to it already, but
not as convenient).
So I'll just open a bug report to remind myself to implement it (or if
somebody else wants to, please go ahead).
--
(domestic pets only, the antidote for overdose, milk.)
bloggy blog: http://lars.ingebrigtsen.no
^ permalink raw reply [flat|nested] 24+ messages in thread
[parent not found: <dc6ccd02-c637-f8ca-c025-7860421809af@yandex.ru>]
* Re: git show
2019-11-01 13:51 git show Lars Ingebrigtsen
2019-11-01 14:01 ` Eli Zaretskii
[not found] ` <dc6ccd02-c637-f8ca-c025-7860421809af@yandex.ru>
@ 2019-11-02 18:42 ` Juri Linkov
2019-11-02 18:59 ` Eli Zaretskii
2019-11-02 19:09 ` Stephen Berman
2 siblings, 2 replies; 24+ messages in thread
From: Juri Linkov @ 2019-11-02 18:42 UTC (permalink / raw)
To: Lars Ingebrigtsen; +Cc: emacs-devel
> The only vc thing I find myself leaving Emacs for to do is "git show
> <id>" (when people refer to a specific id in a bug report, for
> instance). I've looked through the vc-dir command set, and I can't find
> anything like that.
>
> Is that command missing from vc-dir?
Not missing, it's implemented already by
C-u M-x vc-log-search RET git log -1 <id> RET
^ permalink raw reply [flat|nested] 24+ messages in thread
* Re: git show
2019-11-02 18:42 ` Juri Linkov
@ 2019-11-02 18:59 ` Eli Zaretskii
2019-11-02 19:09 ` Stephen Berman
1 sibling, 0 replies; 24+ messages in thread
From: Eli Zaretskii @ 2019-11-02 18:59 UTC (permalink / raw)
To: Juri Linkov; +Cc: larsi, emacs-devel
> From: Juri Linkov <juri@linkov.net>
> Date: Sat, 02 Nov 2019 20:42:18 +0200
> Cc: emacs-devel@gnu.org
>
> > The only vc thing I find myself leaving Emacs for to do is "git show
> > <id>" (when people refer to a specific id in a bug report, for
> > instance). I've looked through the vc-dir command set, and I can't find
> > anything like that.
> >
> > Is that command missing from vc-dir?
>
> Not missing, it's implemented already by
>
> C-u M-x vc-log-search RET git log -1 <id> RET
Definitely missing from the manual, though ;-)
^ permalink raw reply [flat|nested] 24+ messages in thread
* Re: git show
2019-11-02 18:42 ` Juri Linkov
2019-11-02 18:59 ` Eli Zaretskii
@ 2019-11-02 19:09 ` Stephen Berman
2019-11-02 21:33 ` Juri Linkov
1 sibling, 1 reply; 24+ messages in thread
From: Stephen Berman @ 2019-11-02 19:09 UTC (permalink / raw)
To: Juri Linkov; +Cc: Lars Ingebrigtsen, emacs-devel
On Sat, 02 Nov 2019 20:42:18 +0200 Juri Linkov <juri@linkov.net> wrote:
>> The only vc thing I find myself leaving Emacs for to do is "git show
>> <id>" (when people refer to a specific id in a bug report, for
>> instance). I've looked through the vc-dir command set, and I can't find
>> anything like that.
>>
>> Is that command missing from vc-dir?
>
> Not missing, it's implemented already by
>
> C-u M-x vc-log-search RET git log -1 <id> RET
I didn't know about this, but it's not as convenient as being able to
show the commit message (or the whole commit) of the id at point (I
wrote such a command for myself for my local Emacs branches, but I'm not
familiar enough with the internals of VC to integrate it with VC).
Steve Berman
^ permalink raw reply [flat|nested] 24+ messages in thread
* Re: git show
2019-11-02 19:09 ` Stephen Berman
@ 2019-11-02 21:33 ` Juri Linkov
2019-11-02 22:06 ` Juri Linkov
0 siblings, 1 reply; 24+ messages in thread
From: Juri Linkov @ 2019-11-02 21:33 UTC (permalink / raw)
To: Stephen Berman; +Cc: Lars Ingebrigtsen, emacs-devel
>>> The only vc thing I find myself leaving Emacs for to do is "git show
>>> <id>" (when people refer to a specific id in a bug report, for
>>> instance). I've looked through the vc-dir command set, and I can't find
>>> anything like that.
>>>
>>> Is that command missing from vc-dir?
>>
>> Not missing, it's implemented already by
>>
>> C-u M-x vc-log-search RET git log -1 <id> RET
>
> I didn't know about this, but it's not as convenient as being able to
> show the commit message (or the whole commit) of the id at point (I
> wrote such a command for myself for my local Emacs branches, but I'm not
> familiar enough with the internals of VC to integrate it with VC).
Not convenient, indeed. So maybe a dedicated command is still needed
after all, unless it's not possible to reuse C-x v l with a prefix key.
^ permalink raw reply [flat|nested] 24+ messages in thread
* Re: git show
2019-11-02 21:33 ` Juri Linkov
@ 2019-11-02 22:06 ` Juri Linkov
0 siblings, 0 replies; 24+ messages in thread
From: Juri Linkov @ 2019-11-02 22:06 UTC (permalink / raw)
To: Stephen Berman; +Cc: Lars Ingebrigtsen, emacs-devel
>>> Not missing, it's implemented already by
>>>
>>> C-u M-x vc-log-search RET git log -1 <id> RET
>>
>> I didn't know about this, but it's not as convenient as being able to
>> show the commit message (or the whole commit) of the id at point (I
>> wrote such a command for myself for my local Emacs branches, but I'm not
>> familiar enough with the internals of VC to integrate it with VC).
>
> Not convenient, indeed. So maybe a dedicated command is still needed
> after all, unless it's not possible to reuse C-x v l with a prefix key.
Oops, logic error: “unless not possible” ≡ “if possible”.
That means to implement both.
^ permalink raw reply [flat|nested] 24+ messages in thread
end of thread, other threads:[~2019-11-05 16:33 UTC | newest]
Thread overview: 24+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-11-01 13:51 git show Lars Ingebrigtsen
2019-11-01 14:01 ` Eli Zaretskii
2019-11-01 14:06 ` Lars Ingebrigtsen
2019-11-01 15:57 ` Stefan Monnier
2019-11-02 8:01 ` Steinar Bang
2019-11-02 11:00 ` Dmitry Gutov
2019-11-02 18:45 ` Juri Linkov
2019-11-03 14:32 ` Lars Ingebrigtsen
2019-11-04 22:37 ` Steinar Bang
2019-11-04 22:48 ` Steinar Bang
2019-11-05 7:02 ` Steinar Bang
2019-11-05 16:33 ` Óscar Fuentes
2019-11-02 18:48 ` dired-vc-rename (was: git show) Juri Linkov
2019-11-03 14:33 ` dired-vc-rename Lars Ingebrigtsen
2019-11-02 14:29 ` git show Lars Ingebrigtsen
2019-11-02 18:16 ` Stefan Monnier
2019-11-03 15:11 ` Lars Ingebrigtsen
[not found] ` <dc6ccd02-c637-f8ca-c025-7860421809af@yandex.ru>
[not found] ` <87imo33ddk.fsf@gnus.org>
2019-11-01 14:17 ` Dmitry Gutov
2019-11-01 15:35 ` Lars Ingebrigtsen
2019-11-02 18:42 ` Juri Linkov
2019-11-02 18:59 ` Eli Zaretskii
2019-11-02 19:09 ` Stephen Berman
2019-11-02 21:33 ` Juri Linkov
2019-11-02 22:06 ` Juri Linkov
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.