Git Bash - 查找从已删除分支合并的提交
Git Bash - Find commits merged from a deleted branch
git 杂技演员我们开始了!
我们有一个分支 X,它被 合并 和 删除 。现在我们需要在 master 中找到所有作为该分支 X 的拉取请求合并的一部分添加的提交。
在物理上,我们正在寻找 master 中的所有提交,源是已经删除的分支 X
我在 git 文档中没有看到任何具体内容,并且已经在堆栈上搜索了一段时间但没有成功。最好的办法是为更改设置一个 --diff
我们该怎么做?
如果您有合并提交的 ID(我们称之为 <merge>
),您可以让 git 为您计算合并基础:
git log <merge>^..<merge>^2
如果您想查看对 master 进行了哪些更改的全局差异:
git diff <merge>^...<merge>^2 # three dots
合并提交有 2 个父级,第一个父级应该是 master
分支的先前状态,第二个父级是合并时功能分支的状态。
如果 name
指向一个提交(任何东西都有效:提交 ID、分支名称、标签名称、HEAD~10
...),那么:
name^
指向它的第一个父节点
name^2
指向其第二个父级(如果它有一个:如果 name
不是合并提交,它将出错)
git 杂技演员我们开始了!
我们有一个分支 X,它被 合并 和 删除 。现在我们需要在 master 中找到所有作为该分支 X 的拉取请求合并的一部分添加的提交。
在物理上,我们正在寻找 master 中的所有提交,源是已经删除的分支 X
我在 git 文档中没有看到任何具体内容,并且已经在堆栈上搜索了一段时间但没有成功。最好的办法是为更改设置一个 --diff
我们该怎么做?
如果您有合并提交的 ID(我们称之为 <merge>
),您可以让 git 为您计算合并基础:
git log <merge>^..<merge>^2
如果您想查看对 master 进行了哪些更改的全局差异:
git diff <merge>^...<merge>^2 # three dots
合并提交有 2 个父级,第一个父级应该是 master
分支的先前状态,第二个父级是合并时功能分支的状态。
如果 name
指向一个提交(任何东西都有效:提交 ID、分支名称、标签名称、HEAD~10
...),那么:
name^
指向它的第一个父节点name^2
指向其第二个父级(如果它有一个:如果name
不是合并提交,它将出错)