Function: vc-cvs-merge-file

vc-cvs-merge-file is a byte-compiled function defined in vc-cvs.el.gz.

Signature

(vc-cvs-merge-file FILE)

Documentation

Accept a file merge request, prompting for revisions.

Source Code

;; Defined in /usr/src/emacs/lisp/vc/vc-cvs.el.gz
(defun vc-cvs-merge-file (file)
  "Accept a file merge request, prompting for revisions."
  (let* ((first-revision
        (vc-read-revision
         (concat "Merge " file
                 " from branch or revision "
                 "(default news on current branch): ")
         (list file)
         'CVS))
        second-revision
        status)
    (cond
     ((string= first-revision "")
      (setq status (vc-cvs-merge-news file)))
     (t
      (if (not (vc-rcs-branch-p first-revision))
         (setq second-revision
               (vc-read-revision
                "Second revision: "
                (list file) 'CVS nil
                (concat (vc-rcs-branch-part first-revision) ".")))
       ;; We want to merge an entire branch.  Set revisions
       ;; accordingly, so that vc-cvs-merge understands us.
       (setq second-revision first-revision)
       ;; first-revision must be the starting point of the branch
       (setq first-revision (vc-rcs-branch-part first-revision)))
      (setq status (vc-cvs-merge file first-revision second-revision))))
    status))