【发布时间】:2016-03-23 19:25:12
【问题描述】:
这与How can I know in git if a branch has been already merged into master? 非常相似,但它是关于检查重新定位的代码。在我目前正在处理的存储库中,似乎一些功能分支在它们的更改被重新定位到 master 之后已经搁浅了。在我删除分支之前检查这是否已完成的最佳方法是什么?
关于该分支的大多数建议都建议使用分支上最后一次更改的 SHA id 键来检查它是否存在于 master 中。我可以看到这是确保合并的最佳方法,但是当您重新设置此 SHA 时,此 SHA 已更改。
我也将发布一个答案,但我想知道人们是否认为有更好的选择。
【问题讨论】:
-
@dan 我不一定认为变基和合并是一样的。
-
不,变基会更改变更集的 SHA 密钥,因此该问题中的大多数答案都不适用于这个问题。变基的一种用途是重写变更集的历史,这使得在某些情况下很难或不可能弄清楚发生了什么。这就是我要问的这个问题。此外,rebase 似乎在 git 中得到了广泛使用,因此除了我自己之外的其他人找到具有被 rebase 到其他分支的废弃分支的存储库的可能性似乎很高。
-
@k0pernikus 当然它们是不一样的,但这里的真正意图是找到合并或未合并的内容,或者换句话说:什么已经是 master 的一部分。不属于 master 的部分将是未合并的分支。
-
git cherry,更多详情请参见我的回答stackoverflow.com/questions/16304574/…
标签: git branching-and-merging git-rebase