命令git branch -a
生成一个包含250多个分支的列表。我想知道哪些是我的,所以我可以验证它们已合并到生产中然后删除遥控器。
是否有git命令向我展示我创建的所有远程分支?如果我创建的所有分支仍然在我的本地仓库中,这会更容易,但是我最近有了一台新计算机,所以我的本地仓库丢失了。我本地没有分支机构,也没有完整的reflog。
答案 0 :(得分:2)
假设你创建的分支是那些你最后一次提交的分支(你的情况是否正确?),这里有一个我写的小python脚本可以解决你的问题:
#!/usr/bin/python
import subprocess
remotes_output = subprocess.check_output("git branch -r".split())
remotes = remotes_output.split()[2:]
author_cmd = lambda b: "git log -1 --pretty=format:'%%an' %s" % b
for branch_name in remotes:
print '%s : %s' % (branch_name, subprocess.check_output(author_cmd(branch_name).split()))
它采用远程分支的名称,删除第一个条目,它只是HEAD的映射并打印出他们的作者 - 在上面写的意义上。
现在,将此脚本复制到一个文件并grep shell中的输出:
python this_script.py | grep 'your name in git'