(vc-git-print-log, vc-git-log-view-mode): Print a single log for
all the files instead of one per file.
(vc-git-previous-revision): Add support for project-wide previous
revision when specified file is nil.
(vc-git-dir-status-goto-stage): New functions.
(vc-git-after-dir-status-stage1)
(vc-git-after-dir-status-stage1-empty-db)
(vc-git-after-dir-status-stage2): Removed, functionality moved
into the new generic stage functions.
(vc-git-dir-status-files): New function.
(vc-status-create-fileinfo): Make `extra' optional.
(vc-status-busy): New fun.
(vc-status-menu-map): Use it.
(vc-status-crt-marked): Remove.
(vc-status-update): Rename from vc-status-add-entries.
Add argument so as to prevent addition of entries. Rewrite.
(vc-update-vc-status-buffer): Remove.
(vc-status-refresh): Don't remove old entries, set them to
up-to-date instead. Also do it after the update is complete.
(vc-status-marked-files): η-reduce.
renames and permission changes.
(vc-git-extra-fileinfo): New defstruct.
(vc-git-escape-file-name, vc-git-file-type-as-string)
(vc-git-rename-as-string, vc-git-permissions-as-string)
(vc-git-status-printer): New functions.
(vc-git-after-dir-status-stage2): Also return vc-git-extra-fileinfo.
(vc-git-after-dir-status-stage1): Look for copies, renames and
permission changes.
(vc-git-after-dir-status-stage1-empty-db): Set permissions.
(vc-git-dir-status): Ask for staged files and renames.
(vc-status-refresh): Create a temporary buffer and call the
`dir-status' backend function from that buffer.
* vc-bzr.el (vc-bzr-dir-status): Don't create a buffer.
(vc-bzr-after-dir-status): Don't kill the buffer.
* vc-cvs.el (vc-cvs-dir-status): Don't create a buffer.
(vc-cvs-after-dir-status): Don't kill the buffer.
* vc-git.el (vc-git-dir-status): Don't create a buffer.
(vc-git-after-dir-status-stage2): Don't kill the buffer.
* vc-hg.el (vc-hg-dir-status): Don't create a buffer.
(vc-hg-after-dir-status): Don't kill the buffer.
* vc-svn.el (vc-svn-dir-status): Don't create a buffer.
(vc-svn-after-dir-status): Don't kill the buffer.
(vc-git-after-dir-status-stage1-empty-db): New functions.
(vc-git-dir-status, vc-git-after-dir-status-stage1, vc-git-state):
Add support for empty repositories.
* vc.el (vc-default-dired-state-info): Use just "modified".
* vc-cvs.el (vc-cvs-state-heuristic): Turn rev 0 into `added'.
(vc-cvs-mode-line-string): Make use of the better default.
(vc-cvs-parse-entry): Use the new `added'.
(vc-cvs-dired-state-info): Remove.
* vc-svn.el (vc-svn-dired-state-info): Remove.
* vc-hg.el (vc-hg-dired-state-info): Remove.
* vc-git.el (vc-git-dired-state-info): Remove.
busy case ...
(vc-set-mode-line-busy-indicator): ... in this new function.
(vc-status-refresh): Call vc-set-mode-line-busy-indicator.
(vc-update-vc-status-buffer): Reset mode-line-process.
(vc-status-mark-all-files, vc-status-unmark-all-files): Change to
mark/unmark all the files with the same state as the current one.
With a prefix argument mark/unmark all files.
(vc-status-mode-menu): Adjust strings.
(vc-update-vc-status-buffer): Only do something when the argument
is not nil.
(vc-status-kill-dir-status-process): New function.
(vc-status-mode-map): Bind it.
(vc-status-process-buffer): New variable.
(vc-status-mode): Make it local.
(vc-status-refresh): Set it.
* vc-hg.el (vc-hg-dir-status):
* vc-git.el (vc-git-dir-status):
* vc-svn.el (vc-svn-dir-status): Return the buffer in which the
command is run.
`call-process'.
* net/tramp.el (tramp-remote-process-environment): Add "LC_CTYPE=C".
Reported by Pete Forman <pete.forman@westerngeco.com>.
(tramp-perl-encode, tramp-perl-decode): Update copyrights.
(tramp-handle-process-file): Handle the case where DESTINATION is
a consp with t as car.
(tramp-wait-for-output): We shall remove exactly what has been
find by the search.
and 'unregistered states.
* vc-hooks.el (vc-state): Added 'removed state to documentation.
* vc-hg (vc-hg-parse-status): Recognize 'added, 'removed, and
'up-to-date state. Deal with the possibility that C for clean
might change to "=" in the next point release.
* vc-git.el (vc-git-parse-status): Recognize 'removed.
* vc.el (header comment): Better description of new dir-state.
(vc-compatible-state): Defines which states are mutually
compatible; usable with 'edited as a test for which can be committed on.
(vc-dired-hook): Turn off undo in the VC-Dired buffer, a speed tweak.
(vc-default-dired-state-info): Display 'removed state.
* vc-bzr.el (vc-bzr-dir-state): Recognize 'added.
states. and the new return-value convention. These are not
actually used yet, just set.
* vc-svn.el (vc-svn-parse-status): Set 'ignored and 'unregistered
states when appropriate.
* vc-hg.el (vc-hg-state,vc-hg-dir-state): Set 'ignored and
'unregistered' when appropriate.
* vc-git.el: Document that we don't set the new states yet.
* vc.el (vc-dired-state-info): Display 'unregistered and
'ignored states.
* vc-cvs.el (vc-cvs-parse-status): Set the 'ignored state when
appropriate.
* vc-bzr.el (vc-bzr-dir-state): Set 'ignored and
'unregistered' when appropriate.
Modify all instances of the dir-state back-end method to suppress
keeping undo lists on the buffers holding astatus output, which
csn get extremely large.