所以我发现我可以使用git log master --merges -1
获取最新的合并。我想更进一步,只获得最新合并到掌握的最新提交。如何做到这一点?
例如,假设我有master
,staging
,feature1
和feature2
个分支。我将feature1
合并到staging
然后合并到master
。然后我跟feature2
做同样的事情。如何在合并feature2
?
答案 0 :(得分:0)
您是否尝试过--children
旗帜?
git log master --children --merges -1
或者你可以试试
答案 1 :(得分:0)
git log -1 --merges --pretty=format:"%H"
为您提供上次合并提交的SHA。
您可以使用此SHA过滤git rev-list --all --children
的输出,并将结果限制为其父项为给定SHA1的提交。
COMMIT=`git log -1 --merges --pretty=format:"%H"`
git rev-list --all --children | grep "^${COMMIT}" | cut -f2 -d' '
<强> - 儿童强> 同时打印提交的子项(以“提交子项...”的形式)。
因此grep "^${COMMIT}"
将确保输出将是从上次合并提交开始的行。
答案 2 :(得分:0)
在git log master --merges -1
之后,查看该合并的两个父提交。然后发出git log <parent1>..<parent2> --right-only --no-merges --format=format:%H
列出来自feature2
分支的提交。