【发布时间】:2016-08-02 07:21:57
【问题描述】:
我在一个分支(当然是 master 的分支)工作,并且我有一系列提交。
我有兴趣确切地找出哪个提交是分支开始的地方并且是 master 的一部分。
我为什么需要这个?
我想用交互式 rebase 压缩所有提交,我想知道是否有一种简单的方法可以确定传递给 rebase 命令的内容,而不是手动计算提交以传递 HEAD~52
【问题讨论】:
标签: git git-branch git-rebase git-squash
我在一个分支(当然是 master 的分支)工作,并且我有一系列提交。
我有兴趣确切地找出哪个提交是分支开始的地方并且是 master 的一部分。
我为什么需要这个?
我想用交互式 rebase 压缩所有提交,我想知道是否有一种简单的方法可以确定传递给 rebase 命令的内容,而不是手动计算提交以传递 HEAD~52
【问题讨论】:
标签: git git-branch git-rebase git-squash
git merge-base 接受两个提交(通常可以是提交哈希、分支、标签等)并返回它们都偏离的共同祖先。
例如:
mureinik@comupter ~/src/git/myproject [master] $ git merge-base master feature-1
7c2232a4dd6c54ee8cc3f693ab8a0020ad82410b
【讨论】:
git rebase -i $(git merge-base master HEAD)。