summaryrefslogtreecommitdiff
path: root/lisp/vc
Commit message (Collapse)AuthorAgeFilesLines
...
| * | Have 'last-change' accept a line number instead of a rangePhilip Kaludercic2022-10-302-20/+19
| | | | | | | | | | | | | | | | | | | | | | | | * 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'.
| * | Extract last source package release from local VCS dataPhilip Kaludercic2022-10-302-0/+35
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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".
| * | ; Update 'clone' documentation in headerPhilip Kaludercic2022-10-231-2/+5
| | |
| * | Immediately check out the right branch or revisionPhilip Kaludercic2022-10-235-12/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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.
| * | Merge remote-tracking branch 'origin/master' into feature/package+vcPhilip Kaludercic2022-10-181-3/+47
| |\ \
| * | | Have 'vc-clone' return a directoryPhilip Kaludercic2022-10-185-14/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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.
| * | | Merge branch 'master' into feature/package+vcPhilip Kaludercic2022-10-152-32/+59
| |\ \ \
| * | | | ; * lisp/vc/vc-cvs.el (vc-cvs-clone): Remove functionPhilip Kaludercic2022-10-121-3/+0
| | | | |
| * | | | Merge branch 'master' into feature/package+vcPhilip Kaludercic2022-10-0816-219/+775
| |\ \ \ \
| * | | | | ; * vc-svn.el (vc-svn-clone): Fix typoPhilip Kaludercic2022-10-071-1/+1
| | | | | |
| * | | | | * lisp/vc/vc-svn.el (vc-svn-clone): Add 'clone' implementationPhilip Kaludercic2022-10-061-0/+3
| | | | | |
| * | | | | * lisp/vc/vc-cvs.el (vc-cvs-clone): Add 'clone' implementationPhilip Kaludercic2022-10-061-0/+3
| | | | | |
| * | | | | * lisp/vc/vc-bzr.el (vc-bzr-clone): Add 'clone' implementationPhilip Kaludercic2022-10-061-0/+3
| | | | | |
| * | | | | * lisp/vc/vc-hg.el (vc-hg-clone): Add 'clone' implementationPhilip Kaludercic2022-10-061-0/+2
| | | | | |
| * | | | | Merge remote-tracking branch 'origin/master' into feature/package+vcPhilip Kaludercic2022-08-182-12/+9
| |\ \ \ \ \
| * \ \ \ \ \ Merge remote-tracking branch 'origin/master' into feature/package+vcPhilip Kaludercic2022-08-1220-351/+218
| |\ \ \ \ \ \
| * | | | | | | Ignore files in .elpaignore during byte compilationPhilip Kaludercic2022-08-111-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * package.el (package--parse-elpaignore): Add new function. (package--compile): Bind 'byte-compile-ignore-files' to the result of 'package--parse-elpaignore'.
| * | | | | | | Merge remote-tracking branch 'origin/master' into feature/package+vcPhilip Kaludercic2022-07-3128-526/+290
| |\ \ \ \ \ \ \
| * | | | | | | | Implement vc-clone for gitPhilip Kaludercic2022-02-141-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * vc-git.el (vc-git-clone): Add Git implementation
| * | | | | | | | Add new command to clone a repositoryPhilip Kaludercic2022-02-141-0/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * vc.el (vc-clone): Add command
* | | | | | | | | vc-svn-ignore-completion-table: Ignore empty linesDmitry Gutov2022-11-021-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * lisp/vc/vc-svn.el (vc-svn-ignore-completion-table): Make sure to ignore empty lines (bug#58889).
* | | | | | | | | Speed up vc-default-checkin-patch a littleDmitry Gutov2022-10-311-3/+0
| |_|_|_|_|_|_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * lisp/vc/vc.el (vc-default-checkin-patch): Drop some 'revert-buffer' calls to speed up the process a little (bug#52349).
* | | | | | | | vc-hg-checkin-patch: Add implementation for HgDmitry Gutov2022-10-261-10/+26
| |_|_|_|_|_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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.
* | | | | | | ; Fix commentDmitry Gutov2022-10-181-1/+1
| | | | | | |
* | | | | | | Follow-up fixes for vc-default-checkin-patchDmitry Gutov2022-10-181-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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.
* | | | | | | Add default implementation for 'checkin-patch'Dmitry Gutov2022-10-171-0/+44
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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
* | | | | | | ; * lisp/vc/vc.el (vc-prepare-patch): Fix pluralisationPhilip Kaludercic2022-10-161-1/+2
| | | | | | |
* | | | | | | ; * lisp/vc/vc.el (vc-prepare-patch): Remove 'exit-recursive-edit'Philip Kaludercic2022-10-161-2/+1
| |_|_|_|_|/ |/| | | | |
* | | | | | * lisp/vc/vc-git.el (vc-git-symbolic-commit): Use --no-undefinedPhilip Kaludercic2022-10-151-10/+9
| | | | | |
* | | | | | * lisp/vc/vc-git.el (vc-git-symbolic-commit): Add argument FORCEPhilip Kaludercic2022-10-151-3/+8
| | | | | | | | | | | | | | | | | | | | | | | | (Bug#57400)
* | | | | | * lisp/vc/vc-git.el (vc-git--rev-parse): Allow abbreviating commitsPhilip Kaludercic2022-10-151-5/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * lisp/vc/vc-git.el (vc-git-working-revision): Use abbreviated comment references. (Bug#57400)
* | | | | | ; * lisp/vc/vc.el (vc-default-prepare-patch): Add missing argumentPhilip Kaludercic2022-10-141-1/+1
| | | | | |
* | | | | | Prepare all inline patches at oncePhilip Kaludercic2022-10-141-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * lisp/vc/vc.el (vc-prepare-patch): Remove the usage of 'recursive-edit' when 'vc-prepare-patches-separately' is non-nil.
* | | | | | Allow reordering commits in 'vc-prepare-patch' promptPhilip Kaludercic2022-10-141-2/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * lisp/vc/vc.el (vc-prepare-patch): Use marked log-view commits as initial input.
* | | | | | Fix `vc-prepare-patch' docstringRobert Pluim2022-10-101-4/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * lisp/vc/vc.el (vc-prepare-patch): Correct description of `vc-prepare-patches-separately'.
* | | | | | ; * lisp/vc/vc.el (vc-prepare-patches-separately): Doc fix.Eli Zaretskii2022-10-081-5/+5
| | | | | |
* | | | | | ; * lisp/vc/vc.el (vc-prepare-patches-separately): Fix docstringPhilip Kaludercic2022-10-081-4/+5
| | | | | | | | | | | | | | | | | | | | | | | | Noticed by German Pacenza.
* | | | | | ; Add missing documentation stringsPhilip Kaludercic2022-10-081-0/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * lisp/vc/vc.el (vc-read-revision): Add a docstring. (vc-read-multiple-revisions): Add a docstring.
* | | | | | Fix misleading prompt in vc-git-create-tagVisuwesh2022-10-081-1/+1
| |_|_|_|/ |/| | | | | | | | | | | | | | | | | | | * lisp/vc/vc-git.el (vc-git-create-tag): Actually pass the DEFAULT argument to vc-read-revision (bug#58378).
* | | | | Add a VC command to prepare patchesPhilip Kaludercic2022-10-085-4/+171
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * doc/emacs/vc1-xtra.texi (Miscellaneous VC): Add new node. (Editing VC Commands): Document new feature. * etc/NEWS: Mention 'vc-prepare-patch'. * lisp/vc/log-view.el: Autoload 'log-view-get-marked'. * lisp/vc/vc-git.el (vc-git-prepare-patch): Add Git implementation. * lisp/vc/vc-hg.el (vc-git-prepare-patch): Add Mercurial implementation. * lisp/vc/vc-bzr.el (vc-git-prepare-patch): Add Bazaar implementation. * lisp/vc/vc.el (vc-read-revision): Add a MULTIPLE argument. (vc-read-multiple-revisions): Add an auxiliary function that always calls 'vc-read-revision' with a non-nil value for MULTIPLE. (vc-prepare-patches-separately): Add user option. (message-goto-body): Declare function. (message--name-table): Declare function. (vc-default-prepare-patch): Add a default implementation. (vc-prepare-patch): Add command. (Bug#57400)
* | | | | * lisp/vc/vc-git.el (vc-git-checkin): Add more checks for vc-git-patch-stringJuri Linkov2022-10-021-1/+25
| | | | | | | | | | | | | | | | | | | | | | | | | Check that vc-git-patch-string contains the same changes that already exists in the staged area when files were added/removed by vc commands (bug#52349).
* | | | | In vc-git-log-incoming use the repository in the command "fetch" (bug#50340)Juri Linkov2022-10-022-5/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * lisp/vc/vc-git.el (vc-git-log-incoming): Use repository part from non-nil remote-location in the command "fetch". * lisp/vc/vc.el (vc-log-incoming, vc-log-outgoing): Mention in docstrings and prompts that REMOTE-LOCATION can be a remote branch name. * doc/emacs/maintaining.texi (VC Change Log): For commands vc-log-incoming and vc-log-outgoing, use the term "remote location" instead of "repository".
* | | | | Make "git pull" output slightly prettierLars Ingebrigtsen2022-10-011-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | | * lisp/vc/vc-git.el (vc-git--pushpull): Translate ^M in output (bug#58199).
* | | | | Add vc-edit-next-commandSean Whitton2022-09-302-18/+38
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * lisp/vc/vc.el (vc-read-revision): Override vc-filter-command-function back to its default value. (vc-print-branch-log): Remove recently-added prefix argument. (vc-edit-next-command): New command. * lisp/vc/vc-hooks.el (vc-prefix-map): Bind it to 'C-x v !'. * etc/NEWS: * doc/emacs/vc1-xtra.texi (Editing Shell Commands): Document it.
* | | | | vc-filter-command-function: Abbreviate default valueSean Whitton2022-09-261-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | * lisp/vc/vc-dispatcher.el (vc-filter-command-function): Abbreviate `(lambda (&rest args) args)' as just `list'.
* | | | | Add log-edit-summary-separator face (bug#58092)Protesilaos Stavrou2022-09-261-1/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * lisp/vc/log-edit.el (log-edit-summary-separator): Add new face. (log-edit-font-lock-keywords): Replace hardcoded face attributes with named face. * etc/NEWS: Announce the new face.
* | | | | Tweak window handling in vc-pull-and-pushLars Ingebrigtsen2022-09-242-8/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * lisp/vc/vc-dispatcher.el (vc--inhibit-async-window): Rename variable. (vc-do-async-command): Allow inhibiting all window changes. * lisp/vc/vc-git.el (vc-git-pull-and-push): Don't pop up the window asynchronously on the "pull" because that gets in the way of doing other things.
* | | | | ; Drop two obsolete defvarsSean Whitton2022-09-242-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | | * lisp/vc/vc-git.el (vc-want-edit-command-p) * lisp/vc/vc.el (vc-want-edit-command-p): Drop obsolete defvar.
* | | | | Generalize & simplify implementation of user edits to VC commandsSean Whitton2022-09-243-136/+149
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * lisp/vc/vc-dispatcher.el (vc-pre-command-functions) (vc-want-edit-command-p): Delete. (vc-filter-command-function): New variable. (vc-user-edit-command): Factor out of vc-do-command. (vc-do-command, vc-do-async-command) * lisp/vc/vc-git.el (vc-git--pushpull) * lisp/vc/vc.el (vc-print-branch-log): Use vc-filter-command-function in place of vc-pre-command-functions and vc-want-edit-command-p.
* | | | | Add a new command vc-pull-and-pushLars Ingebrigtsen2022-09-247-20/+74
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * lisp/vc/vc-svn.el (vc-exec-after): * lisp/vc/vc-hg.el (vc-exec-after): * lisp/vc/vc-git.el (vc-exec-after): * lisp/vc/vc-cvs.el (vc-exec-after): * lisp/vc/vc-bzr.el (vc-exec-after): * lisp/org/org-macro.el (vc-exec-after): * lisp/obsolete/vc-mtn.el (vc-exec-after): * lisp/obsolete/vc-arch.el (vc-exec-after): Update declaration. * lisp/vc/vc-dispatcher.el (vc--process-sentinel): Allow running code only on success. (vc-exec-after): Ditto. (vc--inhibit-change-window-start): New variable. (vc-do-async-command): Use it to allow chaining commands without moving window point. Return the process instead of the buffer, since the process may have exited already, and then we can't get at the process. * lisp/vc/vc-git.el (vc-git--pushpull): Return the process object. (vc-git-pull-and-push): New function. * lisp/vc/vc.el (vc-pull-and-push): New command (bug#51964).