emacs-elpa-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[nongnu] elpa/vc-fossil 6f26a92 070/111: Implement the pull/update comma


From: ELPA Syncer
Subject: [nongnu] elpa/vc-fossil 6f26a92 070/111: Implement the pull/update command.
Date: Wed, 29 Sep 2021 08:59:23 -0400 (EDT)

branch: elpa/vc-fossil
commit 6f26a92f4a11d28de71663d1cf1c8b3c1e968b59
Author: fifr <fifr>
Commit: fifr <fifr>

    Implement the pull/update command.
---
 vc/el/vc-fossil.el | 28 ++++++++++++++++++++++++++++
 1 file changed, 28 insertions(+)

diff --git a/vc/el/vc-fossil.el b/vc/el/vc-fossil.el
index b3cbb77..dd31e07 100644
--- a/vc/el/vc-fossil.el
+++ b/vc/el/vc-fossil.el
@@ -29,6 +29,7 @@
 ;; * find-version (file rev buffer)
 ;; * checkout (file &optional editable rev)
 ;; * revert (file &optional contents-done)
+;; * pull (prompt)
 ;; - responsible-p (file)
 ;; HISTORY FUNCTIONS
 ;; * print-log (file &optional buffer)
@@ -61,6 +62,8 @@ If nil, use the value of `vc-diff-switches'.  If t, use no 
switches."
 
 ;;; BACKEND PROPERTIES
 
+(defvar vc-fossil-history nil)
+
 (defun vc-fossil-revision-granularity () 'repository)
 
 
@@ -244,6 +247,31 @@ If `files` is nil return the status for all files."
   (if contents-done t
     (vc-fossil-command nil 0 file "revert")))
 
+(defun vc-fossil-pull (prompt)
+  "Pull upstream changes into the current branch.
+
+With a prefix argument or of PROMPT is non-nil, prompt for a specific
+Fossil pull command.  The default is \"fossil update\"."
+  (interactive "P")
+  (let* ((root (vc-fossil-root default-directory))
+         (buffer (format "*vc-fossil : %s*" (expand-file-name root)))
+         (fossil-program "fossil")
+         (command "update")
+         (args '()))
+    (when prompt
+      (setq args (split-string
+                  (read-shell-command "Run Fossil (like this): "
+                                      "fossil update"
+                                      'vc-fossil-history)
+                  " " t))
+      (setq fossil-program (car args)
+            command (cadr args)
+            args (cddr args)))
+    (apply 'vc-do-async-command buffer root fossil-program command args)
+    (with-current-buffer buffer
+      (vc-run-delayed (vc-compilation-mode 'Fossil)))
+    (vc-set-async-update buffer)))
+
 ;; HISTORY FUNCTIONS
 
 ;; FIXME, we actually already have short, start and limit, need to



reply via email to

[Prev in Thread] Current Thread [Next in Thread]