【发布时间】:2018-08-24 14:35:36
【问题描述】:
我正在查看我贡献的存储库,手动查看提交历史记录,我看到“打开”(未合并)分支。例如,分支my-branch 是“未合并的”,因为此命令:
$ git log $(git merge-base origin/master origin/my-branch)..origin/my-branch
显示my-branch 上未合并的提交。所以我把它当作一个未合并的分支。另一位贡献者说,“不,它已经被合并了,使用 squash。”果然,如果我查看分支列表(它托管在 Bitbucket),它不会出现在列表中。它不会出现在“Active”列表中,也不会出现在“Merged”列表中。
所以它已经被合并,或关闭,或其他什么,根据 Bitbucket。 (但它仍然存在于来自 Bitbucket 的克隆中。)这是 Bitbucket 的一项功能——它以某种方式跟踪通过其接口完成的 squash 合并?是git 的功能,“活跃”的概念吗?什么意思?
更新:根据 Bitbucket 关于 squash 功能的 blog entry,该功能不适用于 Mercurial,因为在 Mercurial 中它需要“过时标记”(大概是为了将压扁的提交标记为过时?)。 git 有自己的版本吗?
【问题讨论】:
-
git merge squash是GIT feature. -
对,这是
git功能。但是 Bitbucket 如何知道压缩的合并不是“活动的”?git也知道吗? -
我不知道“活跃”是什么意思。我猜这是一些bitbucket hoodo?!在 GIT 中,分支就是分支。压扁的分支不会被合并,提交只会被挑选出来。我不太确定你在问什么?
-
Git 没有过时标记(这些是 Mercurial Evolve 扩展功能)。 Bitbucket 定义“活动”/“不活动”,因此他们可以弥补它的含义,您可能应该完全忽略它。 :-) 如果它就像 GitHub 对“活跃”的定义,它只是意味着“提示提交并不是那么旧”,这只是一个稍微有用的措施。
标签: git bitbucket bitbucket-cloud