【问题标题】:Find the starting point to do a rebase -i找到做rebase的起点 -i
【发布时间】:2016-08-02 07:21:57
【问题描述】:

我在一个分支(当然是 master 的分支)工作,并且我有一系列提交。
我有兴趣确切地找出哪个提交是分支开始的地方并且是 master 的一部分。

我为什么需要这个?
我想用交互式 rebase 压缩所有提交,我想知道是否有一种简单的方法可以确定传递给 rebase 命令的内容,而不是手动计算提交以传递 HEAD~52

【问题讨论】:

    标签: git git-branch git-rebase git-squash


    【解决方案1】:

    git merge-base 接受两个提交(通常可以是提交哈希、分支、标签等)并返回它们都偏离的共同祖先。

    例如:

    mureinik@comupter ~/src/git/myproject [master] $ git merge-base master feature-1
    7c2232a4dd6c54ee8cc3f693ab8a0020ad82410b
    

    【讨论】:

    • 为了完整起见,整个命令为:git rebase -i $(git merge-base master HEAD)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-02-09
    • 2012-03-21
    • 2016-12-05
    • 2018-04-28
    • 1970-01-01
    相关资源
    最近更新 更多