如果我将分支A合并到分支B中,然后删除A,那么来自已删除的A分支的提交属于哪个分支?
Git分支只是指向提交的指针。询问“这个提交属于哪个分支?”在一般情况下并没有意义,因为提交可能从多个分支(甚至一个也没有)到达。
考虑以下示例:
提交F
目前仅从bugfix
分支可达;此时说提交F
“属于”bugfix
分支是有意义的。然而,如果您运行以下命令将bugfix
合并到master
中:
git checkout master
git merge bugfix
那么,在这两个分支中都可以到达提交F
:
提交F
不再只属于bugfix
分支,同样也属于master
分支。
如果您随后删除bugfix
,提交F
将再次仅从一个分支(这次是master
)可到达,这时说提交F
“属于”master
是有意义的。
总之,提交通常不能被视为“专属于”任何一个分支。但是,总是有一个问题是有意义的:
从哪些分支(如果有)可到达此提交?