Commit graph

122 commits

Author SHA1 Message Date
Dan Nicolaescu
837b0e99c5 * vc-mtn.el (vc-mtn-annotate-command):
* vc-svn.el (vc-svn-annotate-command): Run asynchronously.
2009-09-14 04:42:04 +00:00
Dan Nicolaescu
32ba3abcc1 * vc.el (top): print-log method now takes an optional SHORTLOG
argument.  Add a new method: root.

* vc-hooks.el (vc-prefix-map, vc-menu-map): Add bindings for
vc-print-root-log and vc-print-root-diff.

* vc-bzr.el (vc-bzr-log-view-mode, vc-bzr-print-log):
* vc-git.el (vc-git-print-log, vc-git-log-view-mode):
* vc-hg.el (vc-hg-print-log, vc-hg-log-view-mode): Add support for
short logs.

* vc-cvs.el (vc-cvs-print-log):
* vc-mtn.el (vc-mtn-print-log):
* vc-rcs.el (vc-rcs-print-log):
* vc-sccs.el (vc-sccs-print-log):
* vc-svn.el (vc-svn-print-log): Add an optional argument shortlog
that is ignored for now.
2009-09-14 04:38:49 +00:00
Michael Albinus
04473f6756 (vc-svn-dir-extra-headers, vc-svn-find-revision):
Let-bind `process-file-side-effects' with nil.
2009-08-25 09:05:07 +00:00
Dan Nicolaescu
77bf3f5452 * vc-hooks.el (vc-stay-local-p, vc-state, vc-working-revision):
Add an optional argument for the backend, use it instead of
calling vc-backend.
(vc-mode-line): Add an optional argument for the backend.  Pass
the backend to vc-state and vc-working-revision.  Move code for
special handling for vc-state being a buffer to ...

* vc-rcs.el (vc-rcs-find-file-hook):
* vc-sccs.el (vc-sccs-find-file-hook): ... here.  New functions.

* vc-svn.el (vc-svn-state, vc-svn-dir-status, vc-svn-checkout)
(vc-svn-print-log, vc-svn-diff): Pass 'SVN to vc-state,
vc-stay-local-p and vc-mode-line calls.

* vc-cvs.el (vc-cvs-state, vc-cvs-checkout, vc-cvs-print-log)
(vc-cvs-diff, vc-cvs-annotate-command)
(vc-cvs-make-version-backups-p, vc-cvs-stay-local-p)
(vc-cvs-dir-status): Pass 'CVS to vc-state, vc-stay-local-p and
vc-mode-line calls.

* vc.el (vc-deduce-fileset): Use vc-deduce-fileset instead of
direct comparison.
(vc-next-action, vc-transfer-file, vc-rename-file): Also pass the
backend when calling vc-mode-line.
(vc-register): Do not create a closure for calling the vc register
function, call it directly.
2009-06-23 06:35:40 +00:00
Stefan Monnier
e6c01f094d (vc-svn-parse-status): Accept ?D for removed files (bug#3213). 2009-05-05 04:17:27 +00:00
Dan Nicolaescu
524a655d93 (vc-svn-after-dir-status): Fix regexp to allow for
file names with leading spaces.  Ignore "." if it appears as a
filename.
2009-04-15 00:32:47 +00:00
Nick Roberts
af02d73901 (vc-svn-after-dir-status): Use shy group for revision
number as it isn't present for unregistered files.
2009-02-10 06:03:07 +00:00
Nick Roberts
22b5692c3d (vc-svn-diff): Revert previous change but add a test
for newvars is nil. (C-u C-x v = with default values).
2009-02-04 10:49:04 +00:00
Dan Nicolaescu
1826af5ecc (vc-svn-dir-status): Disable the vc-stay-local-p
logic, it makes the makes the normal case too slow.
2009-01-31 15:51:07 +00:00
Nick Roberts
cf4b480f77 (vc-svn-dir-status): Correct logic for remote
connection.
(vc-svn-diff): Use old version number even when it is the working
revision.  This is needed, e.g, in the vc-print-log buffer.
2009-01-30 08:16:26 +00:00
Juanma Barranquero
bcca751d83 Exclude VCS metadata dirs from completion.
* bindings.el (completion-ignored-extensions):
  Add entries for VCS metadata directories (CVS/, .svn, etc).

* pcvs.el (completion-ignored-extensions):
* vc-svn.el (completion-ignored-extensions): Don't add VCS-specific
  directory, now done in bindings.el.
2009-01-29 08:53:37 +00:00
Glenn Morris
ae940284fa Add 2009 to copyright years. 2009-01-05 03:18:22 +00:00
Glenn Morris
c8d6b4bc1e (vc-svn-register-switches): Doc fix. Add t as option.
(vc-svn-register): Doc fix.
2008-12-04 07:03:53 +00:00
Glenn Morris
cc4db61a45 Comment. 2008-12-03 07:41:10 +00:00
Chong Yidong
e09deae9d8 Coract spelling. 2008-12-03 03:25:15 +00:00
Glenn Morris
9751169a46 (vc-svn-diff-switches): Doc fix.
(vc-svn-diff): Fix the case where vc-svn-diff-switches is nil.
2008-11-30 01:58:06 +00:00
Glenn Morris
f9d5dc4824 Remove leading `*' from defcustom doc-strings.
(vc-svn-program): Move defcustom to start.
(vc-svn-create-repo, vc-svn-modify-change-comment):
Use vc-svn-program rather than hard-coded "svn".
2008-11-22 03:27:18 +00:00
Nick Roberts
09c6e72e59 (vc-svn-diff): If files is nil don't set oldvers to
nil so that log-view-diff-changeset works.
2008-10-30 09:23:31 +00:00
Dan Nicolaescu
13ad745788 * vc.el: Rename VC methods that were missed when vc-status was
renamed to vc-dir.
* vc-svn.el (vc-svn-dir-extra-headers): Rename from
vc-svn-status-extra-headers.
* vc-hg.el (vc-hg-dir-printer): Rename from vc-hg-status-printer.
(vc-hg-dir-extra-header): Rename from vc-hg-status-extra-headers.
* vc-git.el (vc-git-dir-printer): Rename from vc-dir-status-printer.
(vc-git-dir-extra-headers): Rename from vc-git-status-extra-headers.
* vc-dir.el (vc-dir-mode): Use vc-dir-printer instead of
vc-dir-status-printer.
(vc-dir-headers): Use `dir-extra-headers' instead of
`status-extra-headers'
(vc-dir-printer): Rename from vc-dir-status-printer.
(vc-default-dir-extra-headers): Rename from
vc-default-status-extra-headers.
* vc-cvs.el (vc-cvs-dir-extra-headers): Rename from
vc-cvs-status-extra-headers.
2008-10-27 07:21:43 +00:00
Dan Nicolaescu
5870cb7682 * vc-hooks.el (vc-stay-local): Add a new choice and default to it.
* vc-cvs.el (vc-cvs-dir-stay-local): Remove.
(vc-cvs-stay-local): Add a new choice and default to it.
(vc-cvs-dir-status): Use the new vc-stay-local choice.

* vc-svn.el (vc-svn-dir-status): Use the new vc-stay-local choice.
2008-10-13 01:16:49 +00:00
Glenn Morris
a80a6b0308 (vc-svn-after-dir-status): Handle `svn status -u' output.
(vc-svn-dir-status): Respect vc-stay-local-p.  (Bug#1046)
2008-10-04 20:24:24 +00:00
Dan Nicolaescu
847fb889ab * vc-svn.el (vc-svn-dir-status-files):
* vc-cvs.el (vc-cvs-dir-status-files): New function.
2008-10-04 01:22:26 +00:00
Stefan Monnier
3dd2acc9d3 * vc-svn.el (vc-svn-root):
* vc-sccs.el (vc-sccs-root):
* vc-rcs.el (vc-rcs-root):
* vc-cvs.el (vc-cvs-root): Delete.
* vc-hooks.el (vc-find-root): Remove `invert' argument.
2008-09-07 20:24:24 +00:00
Dan Nicolaescu
245cacf131 (vc-svn-parse-status): Use when instead of if.
Fix 2008-01-01 change: use a shy group to not affect subsequent
match calls.
2008-08-06 16:49:23 +00:00
Dan Nicolaescu
34e6028a41 (vc-annotate-parent-rev): Pacify byte compiler.
(vc-svn-parse-status): Do not set the vc-backend property.
2008-06-25 03:26:45 +00:00
Dan Nicolaescu
e53ac7180f (vc-annotate-parent-rev): Pacify byte compiler. 2008-06-25 02:45:50 +00:00
Juanma Barranquero
def61be234 (log-view-per-file-logs): Pacify byte compiler. 2008-06-16 08:55:56 +00:00
Dan Nicolaescu
6653c6b769 * log-view.el (log-view-diff-changeset): New function.
(log-view-mode-map, log-view-mode-menu): Bind it.
(log-view-per-file-logs, log-view-vc-fileset)
(log-view-vc-backend): New variables.
(log-view-find-revision, log-view-modify-change-comment)
(log-view-annotate-version): Throw an error if the log is for more
than one file and we can't find the current file.  Get the current
file from log-view-vc-fileset if necessary.
(log-view-diff): Get the current file from log-view-vc-fileset if
necessary.

* vc.el (vc-print-log): Set log-view-vc-fileset and log-view-vc-backend.

* vc-hg.el (vc-hg-log-view-mode): Call the log method only once.
(vc-hg-log-view-mode): Declare for compiler.
(vc-hg-log-view-mode): Set log-view-per-file-logs and
log-view-file-re.
(vc-hg-diff): If no file is passed, use default-directory for cwd.

* vc-bzr.el (vc-bzr-log-view-mode): Set log-view-per-file-logs.

* vc-svn.el (vc-svn-log-view-mode): New derived mode.
2008-06-15 14:58:24 +00:00
Eric S. Raymond
2ec0d864c1 Add extra-headers method for SVN. 2008-05-16 18:15:26 +00:00
Eric S. Raymond
370fded4f6 Snapshot primitives globally renamed to refer to tags, documentation updated. 2008-05-15 17:38:50 +00:00
Eric S. Raymond
2888a97eb5 Remove assumption about what nil means as a first arument to vc-do-command. 2008-05-10 13:27:16 +00:00
Eric S. Raymond
6aa5d910bf Remove wash-log from the VC backend API. 2008-05-09 17:30:49 +00:00
Stefan Monnier
a749e19d07 * vc.el (vc-mark-resolved): Add `backend' argument.
(vc-next-action): Pass it the backend.
(vc-next-action, vc-checkout, vc-mark-resolved, vc-version-diff)
(vc-merge, vc-rollback, vc-update, vc-transfer-file, vc-delete-file)
(vc-default-comment-history, vc-default-create-snapshot)
(vc-default-retrieve-snapshot, vc-default-revert, vc-annotate)
(vc-annotate-revision-previous-to-line)
(vc-annotate-show-diff-revision-at-line, vc-annotate-warp-revision):
* vc-svn.el (vc-svn-checkout):
* vc-mcvs.el (vc-mcvs-checkout):
* vc-hooks.el (vc-state, vc-default-workfile-unchanged-p)
(vc-working-revision, vc-before-save, vc-mode-line):
Prefer vc-call-backend to vc-call so as not to recompute the backend.
2008-05-09 16:41:26 +00:00
Eric S. Raymond
4903369afe Remove VC-Dired and backend dir-state methods. 2008-05-07 21:27:41 +00:00
Glenn Morris
eb3fa2cfcf Switch to recommended form of GPLv3 permissions notice. 2008-05-06 08:06:51 +00:00
Eric S. Raymond
70e2f6c752 Clean up vc*-revision-granularity and vc*-checkout-model. 2008-05-02 17:47:25 +00:00
Eric S. Raymond
3702367bce Change 'needs-patch to 'needs-update. 2008-05-01 19:13:16 +00:00
Eric S. Raymond
1cb119fdbf Comment cleanup (no code change). 2008-05-01 16:40:14 +00:00
Stefan Monnier
e0607aaa2c Make `checkout-model' apply to filesets.
* vc-hooks.el (vc-checkout-model): Rewrite.
(vc-before-save, vc-after-save): Adjust callers accordingly.
* vc.el (vc-editable-p, vc-next-action, vc-checkout, vc-update)
(vc-transfer-file): Adjust callers accordingly.
* vc-rcs.el (vc-rcs-checkout-model): Adjust arg.
(vc-rcs-state, vc-rcs-state-heuristic, vc-rcs-receive-file)
(vc-rcs-checkout, vc-rcs-fetch-master-state): Use vc-rcs-checkout-model
instead of vc-checkout-model.
* vc-mcvs.el (vc-mcvs-revert):
Use vc-mcvs-checkout-model i.s.o vc-checkout-model.
* vc-cvs.el (vc-cvs-checkout-model): Adjust arg.
(vc-cvs-revert): Use vc-cvs-checkout-model i.s.o vc-checkout-model.
* vc-svn.el (vc-svn-checkout-model):
* vc-hg.el (vc-hg-checkout-model):
* vc-git.el (vc-git-checkout-model):
* vc-bzr.el (vc-bzr-checkout-model): Adjust arg.
2008-04-29 15:32:56 +00:00
Stefan Monnier
b2ee56c998 (vc-svn-after-dir-status): Complete last change. 2008-04-11 15:59:22 +00:00
Stefan Monnier
c1b513745f Change `dir-status' to not take (and pass) status-buffer.
(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.
2008-04-11 15:17:59 +00:00
Dan Nicolaescu
7fbb47976e * vc-hooks.el (vc-state): Add new state `conflict'.
(vc-after-save): Use when not if.
(vc-default-mode-line-string): Deal with the conflict state.
(vc-prefix-map):
(vc-menu-map): Bind vc-status instead of vc-directory.

* vc.el (vc-editable-p):
(vc-default-status-printer):
(vc-next-action): Deal with the conflict state.
(vc-mark-resolved): New function.
(vc-status-mode): Fix mode name.
(vc-default-comment-history): Use when not if.
(Todo): Add new entries, remove old ones.

* vc-cvs.el (vc-cvs-merge, vc-cvs-merge-news): Set conflict state.
(vc-cvs-parse-status):
(vc-cvs-after-dir-status):
* vc-svn.el (vc-svn-after-dir-status, vc-svn-parse-status):
Detect the conflict state.
2008-04-10 07:32:25 +00:00
Dan Nicolaescu
fd06445166 (vc-svn-modify-change-comment): Add support for the
file:// access method.
2008-04-09 03:38:39 +00:00
Dan Nicolaescu
1b3f2d4ec6 * vc.el (vc-status-add-entry): Assume ENTRY is a list not a cons.
(vc-status-mark-buffer-changed): Handle the extra field.

* vc-bzr.el (vc-bzr-after-dir-status):
* vc-cvs.el (vc-cvs-after-dir-status):
* vc-hg.el (vc-hg-after-dir-status):
* vc-svn.el (vc-svn-after-dir-status): Return a list not a cons.
2008-03-31 15:36:56 +00:00
Dan Nicolaescu
115c006177 * vc.el (vc-status-menu-map, vc-status-mode-map): Bind vc-revert.
(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.
2008-03-29 05:34:52 +00:00
Stefan Monnier
45b24b4de6 * vc-hooks.el (vc-default-mode-line-string): Add case for added files.
* 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.
2008-03-21 17:53:04 +00:00
Dan Nicolaescu
9b7b3814df * vc.el (vc-status-crt-marked): New variable.
(vc-status-mode): Make it local.
(vc-status-refresh): Use it to save the marked files.
(vc-update-vc-status-buffer): Use it to restore the marked files.

* vc-svn.el (vc-svn-after-dir-status):
* vc-hg.el (vc-hg-after-dir-status): Clean up the temporary buffer.
2008-02-29 19:13:54 +00:00
Dan Nicolaescu
751c9f0042 * vc.el (vc-exec-after): Move setting mode-line-process in the
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.
2008-02-22 07:44:08 +00:00
Juanma Barranquero
4ced8551f6 (vc-svn-program): Fix typo in docstring.
(vc-svn-checkin): Fix typo in error message.
2008-02-20 12:42:35 +00:00
Thien-Thi Nguyen
58db72a4d3 Kill eol whitespace; nfc. 2008-02-20 10:40:46 +00:00