diff --git a/cherry_picker/cherry_picker.py b/cherry_picker/cherry_picker.py index 56dcb13..48baef5 100755 --- a/cherry_picker/cherry_picker.py +++ b/cherry_picker/cherry_picker.py @@ -284,7 +284,11 @@ def push_to_remote(self, base_branch, head_branch, commit_message=""): """ git push """ set_state(WORKFLOW_STATES.PUSHING_TO_REMOTE) - cmd = ["git", "push", self.pr_remote, f"{head_branch}:{head_branch}"] + cmd = ["git", "push"] + if head_branch.startswith("backport-"): + # Overwrite potential stale backport branches with extreme prejudice. + cmd.append("--force-with-lease") + cmd += [self.pr_remote, f"{head_branch}:{head_branch}"] try: self.run_cmd(cmd) set_state(WORKFLOW_STATES.PUSHED_TO_REMOTE)