Function: vc--outgoing-base-mergebase
vc--outgoing-base-mergebase is a byte-compiled function defined in
vc.el.gz.
Signature
(vc--outgoing-base-mergebase BACKEND &optional UPSTREAM-LOCATION REFRESH FORCE-TOPIC)
Documentation
Return, under VC backend BACKEND, the merge base with UPSTREAM-LOCATION.
Normally UPSTREAM-LOCATION, if non-nil, is a string.
If UPSTREAM-LOCATION is nil, it means to call vc--outgoing-base and
use its return value as UPSTREAM-LOCATION. If vc--outgoing-base
returns nil, that means to use the place to which vc-push would push.
If UPSTREAM-LOCATION is the special value t, it means to use the place
to which vc-push would push as UPSTREAM-LOCATION, unconditionally.
(This is passed when the user invokes an outgoing base command with a
\C-u C-u prefix argument; see vc--maybe-read-outgoing-base.)
REFRESH is passed on to vc--incoming-revision.
FORCE-TOPIC is passed on to vc--outgoing-base.
Source Code
;; Defined in /usr/src/emacs/lisp/vc/vc.el.gz
(defun vc--outgoing-base-mergebase
(backend &optional upstream-location refresh force-topic)
"Return, under VC backend BACKEND, the merge base with UPSTREAM-LOCATION.
Normally UPSTREAM-LOCATION, if non-nil, is a string.
If UPSTREAM-LOCATION is nil, it means to call `vc--outgoing-base' and
use its return value as UPSTREAM-LOCATION. If `vc--outgoing-base'
returns nil, that means to use the place to which `vc-push' would push.
If UPSTREAM-LOCATION is the special value t, it means to use the place
to which `vc-push' would push as UPSTREAM-LOCATION, unconditionally.
(This is passed when the user invokes an outgoing base command with a
\\`C-u C-u' prefix argument; see `vc--maybe-read-outgoing-base'.)
REFRESH is passed on to `vc--incoming-revision'.
FORCE-TOPIC is passed on to `vc--outgoing-base'."
(vc-call-backend backend 'mergebase
(vc--incoming-revision backend
(pcase upstream-location
('t nil)
('nil
(vc--outgoing-base backend
force-topic))
(_ upstream-location))
refresh)))