Commit graph

227 commits

Author SHA1 Message Date
Eric S. Raymond
d4767877ac Eliminate an unuted function argument.
* vc.el, all backends: API simplification: Remove 4th 'default-state'
argument from vc-dir-status files and its backend methods - no backend
method ever set it.  It was used only in the fallback method to to set
a default of 'up-to-date, though a convoluted call chain obscured
this.
2014-12-02 08:01:46 -05:00
Eric S. Raymond
2fb8b146f7 Remove clear-headers from VC's public method set.
* vc/vc.el and all backends: API simplification; clear-headers is no
longer a public method.  It is now local to the one place it's used,
in the RCS steal-lock method.
2014-12-01 23:49:35 -05:00
Eric S. Raymond
7d2110560e Update the git backend's header comment. 2014-12-01 20:00:40 -05:00
Eric S. Raymond
b7fd432d56 Remove could-register from the set of public VC backend methods,
* vc/vc.el and all backends: API simplification; could-register
is no longer a public method.  (vc-cvs.el still has a private
implementation.)
2014-12-01 18:54:28 -05:00
Eric S. Raymond
ed6ce56e23 Terminate vc-disable-async-diff with extreme prejudice.
* vc/vc.el, and all backends: API cleanup; the backend diff method
takes an explicit async flag.  This eliminates a particularly ugly
global.
2014-12-01 17:56:41 -05:00
Stefan Monnier
b34578dd88 * lisp/vc: Fix use of find-conflicted-file in Git.
* lisp/vc/vc.el (vc-find-conflicted-file): Look for conflicted files in the
current "project" rather than just the current directory.
* lisp/vc/vc-git.el (vc-git-conflicted-files): Clarify in which directory
the file names make sense.
2014-12-01 13:16:54 -05:00
Eric S. Raymond
4893831f69 Update some documentation changes and todo items. 2014-12-01 10:57:09 -05:00
Eric S. Raymond
578d91ac50 Remove vc-state-heuristic from the set of public methods.
* vc/vc.el, vc-hooks.el, and all backends: API simplification;
vc-state-heuristic is no longer a public method, having been removed
where it is redundant, unnecessary, or known buggy. This eliminated
all backends except CVS.  Eliminates bug#7850.
2014-12-01 09:41:54 -05:00
Eric S. Raymond
f82f3f1f17 API simplification: remove vc-workfile-unchanged-p from pubic methods.
* vc/vc.el, vc-hooks.el, and all backends: API simplification;
vc-workfile-unchanged-p is no longer a public method (but the RCS and
SCCS back ends retain it as a private method used in state
computation). This method was redundant with vc-state and usually
implemented as a trivial call to same. Fixes the failure mode
described in bug#694.
2014-12-01 08:24:27 -05:00
Eric S. Raymond
2f4f920079 VC API simplification: remove ability to set initial revision.
This hasn't made any sense since RCS, and was a dumb stunt then.

* vc/vc.el and all backends: API simplification; init-revision is
gone, and vc-registered functions no longer take an initial-revision
argument.
2014-12-01 06:23:10 -05:00
Paul Eggert
0cce3623b1 Merge branch 'emacs-24'. 2014-11-28 23:07:16 -08:00
Eli Zaretskii
04ed420021 Use "~1" instead of "^" in vc-git.el to specify the parent of a Git commit.
lisp/vc/vc-git.el (vc-git-previous-revision): Use "~1" instead of
 "^", since the latter is a special character for MS-Windows system
 shells.
2014-11-21 12:34:59 +02:00
Eli Zaretskii
f9b9251f8c Use correct encoding to communicate with Git.
lisp/vc/vc-git.el (vc-git-command, vc-git--call): Bind
 coding-system-for-read and coding-system-for-write to
 vc-git-commits-coding-system.
2014-11-21 12:26:35 +02:00
Eric S. Raymond
e7e9dbccb0 Remove editable argument from VC's backend checkout methods.
Alters vc/vc-bzr.el, vc/vc-cvs.el, vc/vc-dav.el, vc/vc-git.el,
vc/vc-hg.el, vc/vc-mtn.el, vc/vc-rcs.el, vc/vc-sccs.el,
vc/vc-svn.el, vc/vc.el.

where this matters (which is only in SCCS and RCS) files are now always
checked out editable. This may actually have been dynamically true
already - it looks like the vc-next-action code evolved past visiting
the other case. Tested with RCS.
2014-11-20 03:52:24 -05:00
Eric S. Raymond
f83109f0fa Remove never-used rev argument from VC's backend checkin methods.
Alters vc/vc-arch.el, vc/vc-bzr.el, vc/vc-cvs.el, vc/vc-dav.el,
vc/vc-git.el, vc/vc-hg.el, vc/vc-mtn.el, vc/vc-rcs.el,
vc/vc-sccs.el, vc/vc-svn.el, vc/vc.el.

Only the RCS, SCCS, and CVS back ends tried to do anything with it,
and that code was never exercised. Chiseling away the cruft of
decades...
2014-11-20 02:37:06 -05:00
Rüdiger Sonderfeld
6ffab21f41 vc-git: Support `diff-switches'.
Fix bug#19099.
* lisp/vc/vc-git.el (vc-git-diff): Use "difftool -x diff" with
  `diff-switches' if `vc-git-diff-switches' is nil.
2014-11-19 12:09:57 +01:00
Glenn Morris
e1418d0e25 * lisp/vc/vc/git.el: Fix previous.
Move new code after vc-git-log-view-mode definition to avoid bootstrap error.
Ref: http://hydra.nixos.org/build/16795500
2014-11-05 18:12:07 -05:00
Stefan Monnier
8b86268b69 * lisp/vc/vc.el (vc-region-history): New command.
(vc-print-log-internal): Use cl-some.
* lisp/vc/vc-git.el (vc-git-region-history): New function.
(vc-git-region-history-mode-map)
(vc-git--log-view-long-font-lock-keywords)
(vc-git-region-history-font-lock-keywords): New vars.
(vc-git-region-history-font-lock): New function.
(vc-git-region-history-mode): New major mode.
2014-11-05 14:59:31 -05:00
Rasmus Pank Roulund
baee695a8b * lisp/vc/vc-git.el (vc-git-conflicted-files): Fix bug when git status
returns nil.

Fixes: debbugs:18391
2014-09-04 12:34:45 -04:00
Glenn Morris
f330aa150e * vc-git.el: Comments. 2014-08-25 12:48:08 -04:00
Eric S. Raymond
b5354531ba Add smerge support to the git back end. 2014-08-13 04:42:33 -04:00
Eric S. Raymond
2cc441ecbf Integrate Rüdiger Sonderfeld's code for detecting conflicted files under git. 2014-08-13 04:05:45 -04:00
Andreas Schwab
becc9e3c3f * vc/vc-git.el (vc-git-checkin): When operating on the whole tree
pass "-a".
2014-06-29 22:48:55 +02:00
Dmitry Gutov
f0a4c8d764 Fix #16897
* lisp/vc/vc-git.el (vc-git-command): Turn FILE-OR-LIST into nil when
it only contains the repository root.
2014-03-08 08:56:22 +02:00
Glenn Morris
85a5f61f29 * lisp/vc/vc-git.el (vc-git-print-log): Remove --follow;
reverts 2014-01-09 change.

Fixes: debbugs:16422
2014-01-21 21:01:40 -05:00
Eric S. Raymond
f29778b343 Minor bug fix.
Fixes: debbugs:8756
2014-01-09 11:46:56 -05:00
Paul Eggert
ba3189039a Update copyright year to 2014 by running admin/update-copyright. 2014-01-01 07:43:34 +00:00
Juanma Barranquero
0cd616a2d8 * vc/vc-git.el: Silence byte-compiler warnings.
(vc-git-dir-extra-headers): Rename arg _dir which is no longer ignored.
(log-edit-set-header): Declare.
2013-12-11 18:10:22 +01:00
Dmitry Gutov
0f457a371c Support the new log-edit behavior in vc-git-log-edit-toggle-amend
* lisp/vc/log-edit.el (log-edit-set-header): Extract from
`log-edit-toggle-header'.
(log-edit-extract-headers): Separate the summary, when extracted
from header, from the rest of the message with an empty line.

* lisp/vc/vc-git.el (vc-git-log-edit-toggle-amend): Move the summary
line, if present, to the Summary header.
2013-12-03 00:13:51 +02:00
Dmitry Gutov
6f20dd038e * lisp/vc/vc-git.el (vc-git-annotate-extract-revision-at-line): Make it
work when annotation is invisible.

Fixes: debbugs:13886
2013-11-25 04:28:02 +02:00
Dan Nicolaescu
826dc7b6b1 * vc/vc-git.el (vc-git-dir-extra-headers): Add headers
when rebase or bisect are in progress.
2013-11-19 15:23:53 -05:00
Mitchel Humpherys
be4e325d03 * lisp/vc/vc-git.el (vc-git-grep): Disable pager. 2013-10-01 11:34:14 -04:00
Glenn Morris
96b3f75a80 Silence some vc- compilation warnings
* vc/vc-bzr.el (vc-exec-after): Remove unused declaration.
(vc-compilation-mode): Declare.
(vc-bzr-pull): Require vc-dispatcher.

* vc/vc-git.el (vc-compilation-mode): Declare.
(vc-git-pull): Require vc-dispatcher.
2013-09-11 22:45:42 -07:00
Stefan Monnier
9c750ebae6 * lisp/vc/vc-dispatcher.el (vc-run-delayed): New macro.
(vc-do-command, vc-set-async-update):
* lisp/vc/vc-mtn.el (vc-mtn-dir-status):
* lisp/vc/vc-hg.el (vc-hg-dir-status, vc-hg-dir-status-files)
(vc-hg-pull, vc-hg-merge-branch):
* lisp/vc/vc-git.el (vc-git-dir-status-goto-stage, vc-git-pull)
(vc-git-merge-branch):
* lisp/vc/vc-cvs.el (vc-cvs-print-log, vc-cvs-dir-status)
(vc-cvs-dir-status-files):
* lisp/vc/vc-bzr.el (vc-bzr-pull, vc-bzr-merge-branch, vc-bzr-dir-status)
(vc-bzr-dir-status-files):
* lisp/vc/vc-arch.el (vc-arch-dir-status): Use vc-run-delayed.
* lisp/vc/vc-annotate.el: Use lexical-binding.
(vc-annotate-display-select, vc-annotate): Use vc-run-delayed.
(vc-sentinel-movepoint): Declare.
(vc-annotate): Don't use `goto-line'.
* lisp/vc/vc.el (vc-diff-internal): Prefer a closure to `(lambda...).
(vc-diff-internal, vc-log-internal-common): Use vc-run-delayed.
(vc-sentinel-movepoint): Declare.
* lisp/vc/vc-svn.el: Use lexical-binding.
(vc-svn-dir-status, vc-svn-dir-status-files): Use vc-run-delayed.
* lisp/vc/vc-sccs.el:
* lisp/vc/vc-rcs.el: Use lexical-binding.
2013-09-04 17:09:42 -04:00
Xue Fuqiao
adf2fc4a01 Merge from mainline. 2013-09-04 08:39:34 +08:00
Xue Fuqiao
63191d9f20 Some fixes for vc-ignore.
* lisp/vc/vc.el (vc-ignore): Rewrite.
(vc-default-ignore): New function.
(vc-default-ignore-completion-table): Use find-ignore-file.

* lisp/vc/vc-bzr.el (vc-bzr-ignore, vc-bzr-ignore-completion-table):
* lisp/vc/vc-git.el (vc-git-ignore, vc-git-ignore-completion-table):
* lisp/vc/vc-hg.el (vc-hg-ignore, vc-hg-ignore-completion-table):
Remove.  Most code moved to vc.el.

* doc/emacs/maintaining.texi (VC Ignore): Mention `vc-ignore' with prefix argument.
2013-09-04 08:31:13 +08:00
Stefan Monnier
724f5e41b6 * lisp/vc/vc-git.el (vc-git-checkin): Make it possible to commit a merge. 2013-09-03 14:28:06 -04:00
Xue Fuqiao
ab419665ca Cleanup for vc-ignore.
* vc/vc.el (vc-ignore): Rewrite.
(vc-default-ignore-completion-table):
(vc--read-lines):
(vc--add-line, vc--remove-regexp): New functions.

* vc/vc-svn.el (vc-svn-ignore): Doc fix.
(vc-svn-ignore-completion-table): New function.

* vc/vc-hg.el (vc-hg-ignore): Rewrite.
(vc-hg-ignore-completion-table):
(vc-hg-find-ignore-file): New functions.

* vc/vc-git.el (vc-git-ignore): Rewrite.
(vc-git-ignore-completion-table):
(vc-git-find-ignore-file): New functions.

* vc/vc-dir.el (vc-dir-menu-map): Add menu for vc-dir-ignore.

* vc/vc-bzr.el (vc-bzr-ignore): Rewrite.
(vc-bzr-ignore-completion-table):
(vc-bzr-find-ignore-file): New functions.
2013-08-04 10:55:45 +08:00
Xue Fuqiao
5c09de04ca vc-ignore fixes.
* vc/vc-svn.el (vc-svn-ignore): Remove `interactive'.  Use `*vc*'
buffer for output.

* vc/vc-hg.el (vc-hg-ignore): Remove `interactive'; do not assume
point-min==1; fix search string; fix parentheses missing.

* vc/vc-git.el (vc-git-ignore): Remove `interactive'; do not
assume point-min==1; fix search string; fix parentheses missing.

* vc/vc-cvs.el (vc-cvs-ignore): Remove `interactive'.

* vc/vc-bzr.el (vc-bzr-ignore): Remove `interactive'.  Use `*vc*'
buffer for output.
2013-07-30 11:46:06 +08:00
Xue Fuqiao
7aa7fff0c8 Add vc-ignore.
* lisp/vc/vc.el (vc-ignore): New function.

* lisp/vc/vc-svn.el (vc-svn-ignore): New function.

* lisp/vc/vc-hg.el (vc-hg-ignore): New function.

* lisp/vc/vc-git.el (vc-git-ignore): New function.

* lisp/vc/vc-dir.el (vc-dir-mode-map): Add key binding for vc-dir-ignore
(vc-dir-ignore): New function.

* lisp/vc/vc-cvs.el (vc-cvs-ignore): New function.
(cvs-append-to-ignore): Moved from pcvs.el.

* lisp/vc/vc-bzr.el (vc-bzr-ignore): New function.

* lisp/vc/pcvs.el (vc-cvs): Require 'vc-cvs.
2013-07-30 08:25:31 +08:00
Glenn Morris
712b9732db Silence the rest of vc compilation
* vc/vc-cvs.el (vc-exec-after, vc-coding-system-for-diff, vc-resynch-buffer):
Declare.
(vc-switches, vc-default-revert, vc-version-backup-file): Autoload.

* vc/vc-git.el (vc-exec-after, vc-set-async-update, grep-read-regexp)
(grep-read-files, grep-expand-template, vc-dir-refresh): Declare.
(vc-setup-buffer, vc-switches, vc-resynch-buffer): Autoload.

* vc/vc-hg.el (vc-exec-after, vc-set-async-update): Declare.
(vc-setup-buffer, vc-switches, vc-do-async-command): Autoload.

* vc/vc-sccs.el (vc-file-tree-walk): Declare.
(vc-expand-dirs, vc-switches, vc-setup-buffer, vc-delistify)
(vc-tag-precondition, vc-rename-master): Autoload.
2013-05-28 00:47:11 -07:00
Dmitry Gutov
f1a60a0f07 * lisp/vc/vc-git.el (vc-git-working-revision): When in detached mode,
return the commit hash.  Also set the `vc-git-detached' property.
(vc-git--rev-parse): Extract from `vc-git-previous-revision'.
(vc-git-mode-line-string): Use the same help-echo format whether in
detached mode or not, because we know the actual revision now.  When
in detached mode, shorten the revision to 7 chars.

Fixes: debbugs:14459
2013-05-28 03:11:21 +04:00
Glenn Morris
bb7cdf58f6 Doc fixes related to vc-print-log
* vc/vc-bzr.el (vc-bzr-print-log):
* vc/vc-cvs.el (vc-cvs-print-log):
* vc/vc-git.el (vc-git-print-log):
* vc/vc-hg.el (vc-hg-print-log):
* vc/vc-mtn.el (vc-mtn-print-log):
* vc/vc-rcs.el (vc-rcs-print-log):
* vc/vc-sccs.el (vc-sccs-print-log):
* vc/vc-svn.el (vc-svn-print-log):
* vc/vc.el (vc-print-log-internal): Doc fixes.
2013-04-24 00:52:00 -07:00
Christopher Schmidt
af314ba001 * vc/vc-arch.el (vc-arch-registered):
* vc/vc-bzr.el (vc-bzr-registered):
* vc/vc-cvs.el (vc-cvs-registered):
* vc/vc-git.el (vc-git-registered):
* vc/vc-hg.el (vc-hg-registered):
* vc/vc-mtn.el (vc-mtn-registered):
* vc/vc-svn.el (vc-svn-registered): Suppress load messages.
(Bug#13139)
2013-02-01 18:19:24 +01:00
Paul Eggert
0877d0dc24 Merge from emacs-24; up to 2012-12-06T01:39:03Z!monnier@iro.umontreal.ca 2013-01-02 08:13:04 -08:00
Paul Eggert
ab422c4d68 Update copyright notices for 2013. 2013-01-01 09:11:05 +00:00
Chong Yidong
a8b733a519 * vc/vc-git.el (vc-git-command): Disable the pager.
Fixes: debbugs:6137
2012-11-30 15:43:05 +08:00
Dmitry Gutov
9f7b98f812 Support git commit --amend/--signoff
* lisp/vc/log-edit.el (log-edit-font-lock-keywords): Allow hyphens in
header names.
(log-edit-toggle-header): New function.
(log-edit-extract-headers): Accept function values in HEADERS alist.

* lisp/vc/vc-git.el (vc-git-log-edit-toggle-signoff): New function.
(vc-git-log-edit-toggle-amend): New function.
(vc-git-log-edit-toggle-signoff): New function.
(vc-git-log-edit-mode): New major mode.
(vc-git-log-edit-mode-map): Keymap for it.
(vc-git-checkin): Handle "Amend" and "Sign-Off" headers.
2012-10-02 04:24:18 +04:00
Chong Yidong
865fe16fd2 Update docstrings and comments to use "init file" terminology.
* bookmark.el (bookmark-bmenu-toggle-filenames): Doc fixes.
* comint.el (comint-prompt-read-only):
* custom.el (defcustom):
* hi-lock.el (hi-lock-mode):
* ibuffer.el (ibuffer-formats):
* ielm.el (ielm-prompt-read-only):
* novice.el (disable-command):
* saveplace.el (toggle-save-place):
* speedbar.el (speedbar-supported-extension-expressions):
* startup.el (auto-save-list-file-prefix, init-file-user)
(after-init-hook, inhibit-startup-echo-area-message):
* strokes.el (strokes-help):
* time-stamp.el (time-stamp):
* calendar/calendar.el (calendar, diary-file):
* calendar/diary-lib.el (diary-mail-entries, diary)
(diary-list-entries-hook):
* calendar/holidays.el (holidays, calendar-holidays):
* calendar/lunar.el (lunar-phases):
* calendar/solar.el (sunrise-sunset):
* emulation/edt.el (edt-load-keys):
* emulation/viper.el (viper-mode):
* eshell/em-alias.el (eshell-command-aliases-list):
* eshell/esh-util.el (eshell-convert-numeric-arguments):
* international/ogonek.el (ogonek-information):
* net/tramp-cmds.el (tramp-bug):
* net/quickurl.el (quickurl-reread-hook-postfix):
* play/decipher.el (decipher-font-lock-keywords):
* progmodes/cc-styles.el (c-set-style):
* progmodes/idlw-shell.el (idlwave-shell-prompt-pattern):
* progmodes/inf-lisp.el (inferior-lisp-prompt):
* progmodes/octave-mod.el (octave-mode):
* progmodes/sql.el (sql-mode, sql-interactive-mode, sql-password):
* progmodes/verilog-mode.el (verilog-read-defines):
* textmodes/two-column.el (2C-mode): Likewise.
2012-09-17 13:41:04 +08:00
Paul Eggert
09ae5da1b8 Prefer typical American spelling for "acknowledgment". 2012-07-24 22:48:19 -07:00