我们的 git 过程涉及将功能从功能分支合并到开发中,当稳定时,这些会合并到主控中。
如果在功能中发现错误,该分支将从开发中恢复,这使得弄清楚最终进入 master 的内容有点困难。
我正在考虑一个简单的 shell 脚本来生成合并列表(未还原),这些合并列表正在开发中,但不在 master 中,但无法弄清楚如何生成它。我知道它可以使用基本的 git 和 bash 来完成,所以任何指针都会非常感激。
更新:
从这里的答案,我可以得到一些接近的东西:
git rev-list release_2013_05_20 --not master --merges | xargs -L1 git name-rev | grep -oE '[0-9a-f]{40}\s[^\~\^]*'
但是,如果某个功能被还原,然后再次合并回来,则会显示多个条目。