[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#31941: 26.1; Moving directory on remote host via tramp scp always pe
From: |
Stephen Nutt |
Subject: |
bug#31941: 26.1; Moving directory on remote host via tramp scp always performs copy |
Date: |
Fri, 22 Jun 2018 14:33:50 -0500 |
In Emacs 26, when moving a directory within a remote host over Tramp
using the scp method (e.g. with dired-do-rename or mv in eshell), a copy
and delete are always performed, even when a much simpler mv would
suffice. The behavior is the same when running emacs with -q or with
emacs built from master. This is a regression from the behavior in 25.3.
I think I've isolated the change to the commit b500e0 where the
following was added at the beginning of `tramp-do-copy-or-rename-file'
in tramp-sh.el to explicitly call `copy-directory'.
(if (file-directory-p filename)
(progn
(copy-directory filename newname keep-date t)
(when (eq op 'rename) (delete-directory filename 'recursive)))
I think the conditional should also check if op is a rename and if the
remote of filename and newname are the same, in which case the normal
behavior of the function should proceed which should result in a mv
command.
- bug#31941: 26.1; Moving directory on remote host via tramp scp always performs copy,
Stephen Nutt <=