我可以使用`diff ...`作为分支清理的指标吗?

时间:2015-06-09 17:08:40

标签: git branch branching-and-merging git-diff

我有分支机构 git branch -d some_branch
返回
branch 'some_branch' is not fully merged.

但是 git diff ...some_branch
是空的。

换句话说,(据我所知)," some_branch"中没有任何变化。我现在没有。但它并没有完全合并,而是#34;。

我是否正确假设这可能发生的唯一方法是当前分支的重组?在这种情况下,可能存在历史的分歧,但没有对代码的不同意见。

此外,这似乎总是故意行为的结果。

因此,如果git diff ...some_branch为空,我应该始终安全地删除分支。这是对的吗?

1 个答案:

答案 0 :(得分:3)

当git抱怨“未完全合并”时,它正在讨论提交的关系,而不是关于文件的内容。

如果你有一个基本提交,并且在这两个不同的提交之上引入相同的更改,那么两者之间的差异是空的。但是你的分支却有“两个头”,因此“没有完全合并”。

-- A -- B
    `-- B'

在您的情况下,当您的上游负责人位于B时,您的本地负责人可能会在B'

如果删除本地分支,则本地提交将不会成为上游历史记录的一部分。因此,提交及其所有元数据(如作者,日期......)将丢失。 - 这就是警告的原因。