MCPcopy Index your code
hub / github.com/PyGithub/PyGithub / merge

Method merge

github/PullRequest.py:939–961  ·  view source on GitHub ↗

:calls: `PUT /repos/{owner}/{repo}/pulls/{pull_number}/merge `_

(
        self,
        commit_message: Opt[str] = NotSet,
        commit_title: Opt[str] = NotSet,
        merge_method: Opt[str] = NotSet,
        sha: Opt[str] = NotSet,
        delete_branch: bool = False,
    )

Source from the content-addressed store, hash-verified

937 return data
938
939 def merge(
940 self,
941 commit_message: Opt[str] = NotSet,
942 commit_title: Opt[str] = NotSet,
943 merge_method: Opt[str] = NotSet,
944 sha: Opt[str] = NotSet,
945 delete_branch: bool = False,
946 ) -> PullRequestMergeStatus:
947 """
948 :calls: `PUT /repos/{owner}/{repo}/pulls/{pull_number}/merge <https://docs.github.com/en/rest/reference/pulls>`_
949 """
950 assert is_optional(commit_message, str), commit_message
951 assert is_optional(commit_title, str), commit_title
952 assert is_optional(merge_method, str), merge_method
953 assert is_optional(sha, str), sha
954 post_parameters = NotSet.remove_unset_items(
955 {"commit_message": commit_message, "commit_title": commit_title, "merge_method": merge_method, "sha": sha}
956 )
957 headers, data = self._requester.requestJsonAndCheck("PUT", f"{self.url}/merge", input=post_parameters)
958 if delete_branch:
959 self.delete_branch()
960
961 return github.PullRequestMergeStatus.PullRequestMergeStatus(self._requester, headers, data)
962
963 def add_to_assignees(self, *assignees: github.NamedUser.NamedUser | str) -> None:
964 """

Callers

nothing calls this directly

Calls 4

delete_branchMethod · 0.95
is_optionalFunction · 0.90
remove_unset_itemsMethod · 0.80
requestJsonAndCheckMethod · 0.80

Tested by

no test coverage detected