Skip to content

Instantly share code, notes, and snippets.

What would you like to do?
#!/usr/bin/env python
import os
import subprocess
from git import Repo
working_dir = os.getcwd()
repo = Repo(working_dir)
origin_branches = list()
old_branches = list()
branches = list()
for ref in repo.git.branch('-r').split('\n'):
branch = ref.strip()
if branch.startswith('old/'):
old_branches.append(branch.replace('old/', ''))
elif branch.startswith('origin/'):
origin_branches.append(branch.replace('origin/', ''))
for old_branch in old_branches:
if old_branch not in origin_branches:['git', 'checkout', f'old/{old_branch}'])['git', 'switch', '-c', old_branch])['git', 'push'])
if old_branch != 'master':['git', 'push', '-d', 'old', old_branch])
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment