1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2025-12-23 14:10:28 -08:00
Commit graph

1551 commits

Author SHA1 Message Date
Eli Zaretskii
40a758f5ce ; Minor fixes in documentation of recently-changed VC commands
* lisp/vc/vc.el (vc-print-branch-log, vc-create-branch)
(vc-create-tag, vc-retrieve-tag, vc-switch-branch): Doc fixes.
* lisp/vc/vc-hooks.el (vc-menu-map): Minor wording change in :help
text.

* doc/emacs/maintaining.texi (VC Change Log, Creating Branches):
Minor wording and markup changes.
2023-05-26 11:09:14 +03:00
Juri Linkov
3afe4a42e9 * lisp/vc/vc-annotate.el (vc-annotate-mode-menu): Quote vc-annotate-backend.
When unquoted it might get the nil value when vc-annotate.el is loaded
in non-vc-controlled buffer (bug#63689).
2023-05-25 21:33:11 +03:00
Juri Linkov
b62a2b08b8 Add vc-create/switch/print-branch to menu and update documentation (bug#63690)
* doc/emacs/maintaining.texi (VC Change Log):
Add 'C-x v b l' (vc-print-branch-log).
(Creating Branches): Add @kindex and @findex for vc-create-branch.
(Switching Branches): Add @kindex and @findex for vc-switch-branch.

* lisp/vc/vc-hooks.el (vc-menu-map): Add menu items for new
commands vc-create-branch and vc-switch-branch, and also
vc-print-branch-log.

* lisp/vc/vc.el (vc-print-branch-log): Improve docstring.
2023-05-25 21:24:23 +03:00
Dmitry Gutov
7972b76c2c ; vc-checkout: Wrap var lookup in 'bound-and-true-p' 2023-04-12 02:03:14 +03:00
Dmitry Gutov
e9fef1d70f vc-checkout: Try to use the vc-dir's backend first
* lisp/vc/vc.el (vc-checkout): Try to use the vc-dir's backend
before looking for the file's one.  The latter doesn't work when
the file doesn't exist on disk yet (bug#62674).
2023-04-11 22:59:45 +03:00
Eli Zaretskii
5dc163f592 ; Add a doc string for 'ediff-window-display-p' obsolescence
* lisp/vc/ediff-init.el (ediff-window-display-p): Document how to
prevent Ediff from creating additional frames, now that this
function can no longer be used or advised for that.  (Bug#61850)
2023-02-28 15:15:27 +02:00
Eli Zaretskii
5286111ea1 Improve documentation of VC commands, including in Dired
* doc/emacs/dired.texi (Operating on Files):
* doc/emacs/maintaining.texi (VC Change Log, VC Directory Mode)
(Version Control, Basic VC Editing): Document VC command
invocation from Dired buffers.  Improve documentation of vc-log
commands.

* lisp/dired-aux.el (dired-vc-next-action):
* lisp/vc/vc.el (vc-print-log, vc-log-search, vc-log-mergebase)
(vc-log-view-type, vc-print-root-log, vc-next-action): Doc fixes.
2023-02-23 14:26:06 +02:00
Juri Linkov
26e947ccb1 * lisp/vc/vc.el (vc-find-revision-no-save): Fix parens (bug#61256).
Move '(setq failed nil)' from UNWINDFORMS of 'unwind-protect' to BODYFORM.
2023-02-05 20:23:57 +02:00
Juri Linkov
ecf500b5e3 Handle relative file names in vc-resynch-window and vc-resynch-buffer
* lisp/vc/vc-dispatcher.el (vc-resynch-window, vc-resynch-buffer):
While comparing with `buffer-file-name' if `file' is not absolute
use `expand-file-name' in `vc-root-dir'.  This fixes the case of
refreshing the buffers after typing `C-x v = C-x v u' (bug#60897).
2023-01-24 20:48:20 +02:00
Juri Linkov
e31a562396 * lisp/vc/vc-bzr.el (vc-bzr--pushpull): Return buffer's process.
* lisp/vc/vc-git.el (vc-git--pushpull): Add comment.

* lisp/vc/vc.el (vc-pull-and-push): Expand docstring about
prerequisites for backend to support this command (bug#60569).
2023-01-24 20:27:07 +02:00
Juri Linkov
2343a067c3 Generalize vc-pull-and-push to support more backends (bug#60569)
* lisp/vc/vc-git.el (vc-git-pull-and-push): Remove and move its logic to
vc-pull-and-push.

* lisp/vc/vc.el (vc-pull-and-push): Add code from vc-git-pull-and-push.
2023-01-22 19:27:10 +02:00
Juri Linkov
78f93d92b2 * lisp/vc/vc-dir.el: Make keys ‘% m’ and ‘* %’ compatible with Dired
(vc-dir-mode-map): Replace ‘%’ for vc-dir-mark-by-regexp
with ‘% m’ in regexp-map and ‘* %’ in mark-map (bug#60887).

* doc/emacs/maintaining.texi (VC Directory Commands): Replace ‘%’
with ‘% m’ and ‘* %’.  Mention vc-dir-mark-registered-files.
2023-01-18 19:55:10 +02:00
Juri Linkov
c1401d1c6c * lisp/vc/diff-mode.el (diff-font-lock-keywords): Check for limit.
This check is necessary since 'diff-beginning-of-hunk' can move
not only backwards, but also forwards (bug#60660).
2023-01-09 09:54:19 +02:00
Sean Whitton
de3df3bc51 * lisp/vc/vc-git.el (vc-git-checkin): Pass vc-git-diff-switches. 2023-01-02 23:26:23 -07:00
Eli Zaretskii
cae528457c ; Add 2023 to copyright years. 2023-01-01 05:31:12 -05:00
Stefan Kangas
9292f595a7 ; Fix typos 2022-12-31 12:43:32 +01:00
Juri Linkov
b69bffeec0 * lisp/vc/diff-mode.el (diff-minor-mode-prefix): Replace "ESC" with "\e".
"ESC" looks like an attempt to use kbd syntax in customization.
But actually now 'key-description' is used in 'diff-minor-mode-map'
to convert "\e" to "ESC".
2022-12-28 20:14:43 +02:00
Sean Whitton
baaa9f42e5 vc-git-checkin: Don't try to apply an empty patch
* lisp/vc/vc-git.el (vc-git-checkin): Don't try to apply an empty
patch to the index, because in that case 'git apply' fails.

(cherry picked from commit 1424342225)
2022-12-22 13:37:12 -07:00
Eli Zaretskii
8e42e20ed7 Revert "Use equal and member instead of eq and memq"
This reverts commit f4b430140f.

Please don't install anything on the release branch that is not
strictly necessary fro Emacs 29.
2022-12-16 19:25:45 +02:00
Mattias Engdegård
f4b430140f Use equal and member instead of eq and memq
* lisp/cedet/semantic/complete.el (semantic-displayer-show-request):
* lisp/descr-text.el (describe-char-categories):
* lisp/mh-e/mh-identity.el (mh-select-identity):
* lisp/transient.el (transient--delay-post-command)
(transient--post-command):
* lisp/vc/vc-git.el (vc-git-create-tag):
* test/lisp/emacs-lisp/cl-lib-tests.el
(cl-lib-nth-value-test-multiple-values):
* lisp/emulation/viper-cmd.el (viper-preserve-cursor-color):
Use `equal` instead of `eq` and `member` instead of `memq` where
the comparison is with literals without guaranteed identity.
In some cases this change corrects evident bugs, in others it is
mostly cosmetic.
2022-12-16 17:19:21 +01:00
Juri Linkov
8c30cb90ba * lisp/vc/vc-git.el (vc-git-checkin): Use make-nearby-temp-file (bug#60011) 2022-12-14 10:05:55 +02:00
Juri Linkov
733cdeabfb Don't use diff-mode buffer as a patch when it's visiting a file (bug#59962)
* lisp/vc/vc.el (vc-deduce-fileset-1): Don't call diff-vc-deduce-fileset
for diff-mode when buffer-file-name is non-nil.  This is because in this case
a file with a diff might be committed to VCS.  So don't use it as a patch
to commit with 'C-x v v'.
2022-12-11 19:24:34 +02:00
Sean Whitton
17d40c163e vc-git-print-log: Don't assume vc-git-log-switches is a list
* lisp/vc/vc-git.el (vc-git-print-log): Call ensure-list on
vc-git-log-switches to handle the case where it's a singular string.
2022-12-02 23:58:30 -07:00
Stefan Kangas
70ecdebc92 ; Fix typos (don't abbreviate "with" or "without") 2022-12-01 16:36:09 +01:00
Stefan Kangas
5e8c62ffca ; Fix typos 2022-11-23 05:49:22 +01:00
Stefan Kangas
16318bfb51 ; Fix typos 2022-11-20 12:59:39 +01:00
Eli Zaretskii
d46d67bef1 ; Avoid "Local Variables" popups in Emacs tree
* lisp/vc/vc.el (vc-prepare-patches-separately): Add an autoloaded
form for the 'safe-local-variable' property.  (Bug#59384)
2022-11-20 12:10:38 +02:00
Stefan Kangas
ba485eb949 ; Fix typos 2022-11-18 16:02:19 +01:00
Stefan Kangas
f7ee6609ae ; Fix typos (prefer US spelling) 2022-11-18 13:06:55 +01:00
Philip Kaludercic
fd4da9151f * lisp/vc/vc.el (vc-default-last-change): Use 'vc-call' 2022-11-17 20:55:04 +01:00
Philip Kaludercic
d0ea38b5fe Have 'vc-prepare-patch' handle prefix arguments.
* lisp/emacs-lisp/package-vc.el (package-vc-prepare-patch): Use
'vc-prepare-patch-prompt-revisions'.
* lisp/vc/vc.el (vc-prepare-patch-prompt-revisions): Extract common
function and handle prefix arguments.
(vc-prepare-patch): Pull logic out to
'vc-prepare-patch-prompt-revisions'.
2022-11-17 20:55:04 +01:00
Olivier Certner
c8b9922e26 ediff: Merges with ancestor: Fix computation of hunks and proposed merge
Hunks were not computed correctly because the diff3 command was
invoked with arguments in an incorrect order.  The correct order is
the local file first, the base (or "ancestor") second and the other
file third.  This erroneous behavior had two consequences.  First, the
output of diff3 would change, since it tries to merge chunks according
to maximal matches between the second and first files, and the second
and third files.  Second, ediff, more precisely, `ediff-do-merge',
would consequently try to merge the reverse of the changes from the
base to the other file.

* lisp/vc/ediff-diff.el (ediff-setup-diff-regions3): In the arguments
to `ediff-exec-process', swap the other file with the ancestor (only
when merging with an ancestor).

(ediff-extract-diffs3): Match the hunk data for the ancestor and the
other file correctly.  The local variable `three-way-comp' indicates
this is a merge with ancestors when it is nil.

(Bug#59182)
2022-11-17 11:40:09 +02:00
Juanma Barranquero
623db40dd1 ; * lisp/*.el: Fix typos in docstrings
* lisp/gnus/nnrss.el (nnrss-use-local, nnrss-fetch, nnrss-find-el):
* lisp/leim/quail/japanese.el ("japanese"):
* lisp/org/ol.el (org-link-search-must-match-exact-headline):
* lisp/org/org-faces.el (org-column):
* lisp/progmodes/eglot.el (eglot--stay-out-of-p)
(eglot-workspace-configuration, eglot--read-execute-code-action):
* lisp/vc/vc.el (vc-clone): Fix typos in docstrings.
2022-11-17 08:48:02 +01:00
Morgan Smith
4ccc385ab1 vc-git: Ensure git doesn't try to colorize stashes
* lisp/vc/vc-git.el (vc-git-stash-show): Add --color=never to git
flags.  (Bug#59158)
2022-11-12 20:34:50 +01:00
Stefan Kangas
0f53523775 Remove redundant library installation instructions
* lisp/apropos.el:
* lisp/mail/feedmail.el:
* lisp/mail/mail-hist.el:
* lisp/org/org-ctags.el:
* lisp/org/org-protocol.el:
* lisp/progmodes/ebnf2ps.el:
* lisp/progmodes/mixal-mode.el:
* lisp/progmodes/perl-mode.el:
* lisp/savehist.el:
* lisp/textmodes/table.el:
* lisp/vc/smerge-mode.el: Remove redundant installation instructions
for packages bundled with Emacs.
2022-11-11 04:29:29 +01:00
Philip Kaludercic
8fe62b2ab5 Revert "* lisp/vc/vc-git.el (vc-git--rev-parse): Allow abbreviating commits"
This reverts commit 307ad21004.
2022-11-06 22:50:59 +01:00
Philip Kaludercic
5fa2f11679 Merge branch 'feature/package+vc' 2022-11-04 18:57:45 +01:00
Dmitry Gutov
0f5bf1dbb9 vc-svn-ignore-completion-table: Ignore empty lines
* lisp/vc/vc-svn.el (vc-svn-ignore-completion-table):
Make sure to ignore empty lines (bug#58889).
2022-11-02 00:46:21 +02:00
Dmitry Gutov
1712dec0c0 Speed up vc-default-checkin-patch a little
* lisp/vc/vc.el (vc-default-checkin-patch): Drop some
'revert-buffer' calls to speed up the process a little (bug#52349).
2022-10-31 02:51:49 +02:00
Philip Kaludercic
2a4f37fe52 Merge remote-tracking branch 'origin/master' into feature/package+vc 2022-10-30 18:45:37 +01:00
Philip Kaludercic
d33998ed3b Have 'last-change' accept a line number instead of a range
* lisp/emacs-lisp/package-vc.el (package-vc-release-rev): Use new
signature.
* lisp/vc/vc-git.el (vc-git-last-change): Update signature
* lisp/vc/vc.el (vc-default-last-change): Update signature and use
'annotate-command'.
2022-10-30 16:52:08 +01:00
Philip Kaludercic
30f1e7c1e9 Extract last source package release from local VCS data
* lisp/emacs-lisp/package-vc.el (package-vc-archive-spec-alist):
Unmention :release-rev
(package-vc-desc->spec): Fall back on other archives if a
specification is missing.
(package-vc-main-file): Add new function, copying the behaviour of
elpa-admin.el.
(package-vc-generate-description-file): Use 'package-vc-main-file'.
(package-vc-unpack): Handle special value ':last-release'.
(package-vc-release-rev): Add new function using 'last-change'.
(package-vc-install): Pass ':last-release' as REV instead of a
release.
* lisp/vc/vc-git.el (vc-git-last-change): Add Git 'last-change'
implementation.
* lisp/vc/vc.el (vc-default-last-change): Add default 'last-change'
implementation.

This attempts to replicate the behaviour of elpa-admin.el's
"elpaa--get-last-release-commit".
2022-10-30 14:04:52 +01:00
Dmitry Gutov
d062482c3f vc-hg-checkin-patch: Add implementation for Hg
* lisp/vc/vc-hg.el (vc-hg-checkin-patch): Add Hg-specific
implementation (bug#52349), like suggested in
https://lists.gnu.org/archive/html/emacs-devel/2022-10/msg01533.html.
(vc-hg--extract-headers): Extract from vc-hg-checkin.
2022-10-26 00:09:29 +03:00
Philip Kaludercic
dbcd663715
; Update 'clone' documentation in header 2022-10-23 18:26:17 +02:00
Philip Kaludercic
2154219059
Immediately check out the right branch or revision
* lisp/emacs-lisp/package-vc.el (package-vc-unpack) Use REV to avoid
checking out the wrong branch/revision first.
* lisp/vc/vc-bzr.el: Handle REV.
* lisp/vc/vc-git.el: Handle REV.
* lisp/vc/vc-hg.el: Handle REV.
* lisp/vc/vc-svn.el: Handle REV.
* lisp/vc/vc.el: Make BACKEND optional and add REV.
2022-10-23 18:04:55 +02:00
Philip Kaludercic
65fa87329c
Merge remote-tracking branch 'origin/master' into feature/package+vc 2022-10-18 21:53:25 +02:00
Philip Kaludercic
5ceb88e6eb
Have 'vc-clone' return a directory
* lisp/vc/vc-bzr.el (vc-bzr-clone): Return directory.
* lisp/vc/vc-git.el (vc-git-clone): Return directory.
* lisp/vc/vc-hg.el (vc-hg-clone): Return directory.
* lisp/vc/vc-svn.el (vc-svn-clone): Return directory.
* lisp/vc/vc.el (vc-clone): Ensure the backend returns directory.
2022-10-18 21:21:49 +02:00
Dmitry Gutov
be3d9f717d ; Fix comment 2022-10-18 02:49:21 +03:00
Dmitry Gutov
5e77265523 Follow-up fixes for vc-default-checkin-patch
* lisp/vc/vc.el (vc-default-checkin-patch):
Call vc-revert-file on buffer-file-name (vc-backend failed on
relative name sometimes).  Delete the tmp dir after copying all
files back, not just the first one.  Bug#52349,
https://lists.gnu.org/archive/html/emacs-devel/2022-10/msg01446.html.
2022-10-18 02:35:05 +03:00
Dmitry Gutov
4a6ad6e18f Add default implementation for 'checkin-patch'
* lisp/vc/vc.el (vc-default-checkin-patch):
Add default implementation for 'checkin-patch' (bug#52349).
The first attempt was here:
https://lists.gnu.org/archive/html/emacs-devel/2022-08/msg01464.html
2022-10-17 02:46:02 +03:00