diff options
| author | Andrii Kolomoiets <andreyk.mad@gmail.com> | 2020-08-09 14:30:55 +0200 |
|---|---|---|
| committer | Lars Ingebrigtsen <larsi@gnus.org> | 2020-08-09 14:30:55 +0200 |
| commit | c789c3aac66943497f771896ec13bae618f86a01 (patch) | |
| tree | e9e1d49183c1448b103f67e82583b9629b04cee3 /lisp | |
| parent | 2ed502d2a76e93ecd5366a6ec3926894e4fbe827 (diff) | |
| download | emacs-c789c3aac66943497f771896ec13bae618f86a01.tar.gz | |
vc-hg-create-tag: Possibility to create a branch
* lisp/vc/vc-hg.el (vc-hg-create-bookmark): New user option.
(vc-hg-create-tag): Use it (bug#38425).
Diffstat (limited to 'lisp')
| -rw-r--r-- | lisp/vc/vc-hg.el | 24 |
1 files changed, 21 insertions, 3 deletions
diff --git a/lisp/vc/vc-hg.el b/lisp/vc/vc-hg.el index 95ced7b8d09..09f804357e0 100644 --- a/lisp/vc/vc-hg.el +++ b/lisp/vc/vc-hg.el @@ -186,6 +186,16 @@ highlighting the Log View buffer." :group 'vc-hg :version "24.5") +(defcustom vc-hg-create-bookmark t + "This controls whether `vc-create-tag' will create a bookmark or branch. +If nil, named branch will be created. +If t, bookmark will be created. +If `ask', you will be prompted for a branch type." + :type '(choice (const :tag "No" nil) + (const :tag "Yes" t) + (const :tag "Ask" ask)) + :version "28.1") + ;; Clear up the cache to force vc-call to check again and discover ;; new functions when we reload this file. @@ -625,10 +635,18 @@ Optional arg REVISION is a revision to annotate from." ;;; Tag system (defun vc-hg-create-tag (dir name branchp) - "Attach the tag NAME to the state of the working copy." + "Create tag NAME in repo in DIR. Create branch if BRANCHP. +Variable `vc-hg-create-bookmark' controls what kind of branch will be created." (let ((default-directory dir)) - (and (vc-hg-command nil 0 nil "status") - (vc-hg-command nil 0 nil (if branchp "bookmark" "tag") name)))) + (vc-hg-command nil 0 nil + (if branchp + (if (if (eq vc-hg-create-bookmark 'ask) + (yes-or-no-p "Create bookmark instead of branch? ") + vc-hg-create-bookmark) + "bookmark" + "branch") + "tag") + name))) (defun vc-hg-retrieve-tag (dir name _update) "Retrieve the version tagged by NAME of all registered files at or below DIR." |
