从git中的另一个分支分叉一个分支
我知道这里已经有人问过这个问题,但我只是有一些奇怪的问题,我想在你的帮助下解决 因此,我有一个名为从git中的另一个分支分叉一个分支,git,Git,我知道这里已经有人问过这个问题,但我只是有一些奇怪的问题,我想在你的帮助下解决 因此,我有一个名为featurekernel的分支,我想从中派生出来,我想创建featurenewfeature。下面是我在第三个分支上做的事情: git签出-b功能新功能内核 git推送——设置上游原点功能新功能 然后我检查了我的bitbucket,在分支中它显示功能新功能分支的父分支是主分支 这怎么可能?我做错了什么?如果您在从功能内核分支后没有对新分支功能新功能进行任何更改,即分支功能内核和分支功能新功能相
featurekernel
的分支,我想从中派生出来,我想创建featurenewfeature
。下面是我在第三个分支上做的事情:
git签出-b功能新功能内核
git推送——设置上游原点功能新功能
功能新功能
分支的父分支是主分支
这怎么可能?我做错了什么?如果您在从
功能内核
分支后没有对新分支功能新功能
进行任何更改,即分支功能内核
和分支功能新功能
相同,git会将这两个分支视为同一个分支,它们将共享同一父分支。如果featurekernel
是从master
分支分支出来的,您将看到featurenewfeature
也是从master
分支出来的。git中的分支只是指向提交的指针。对于给定的分支是如何创建的,没有留下任何痕迹(好吧,有时可能是在本地reflog中,但它不可靠,而且从不推送)。因此,从git的角度来看,featurenewfeature
和featurekernel
是两个相同的分支,唯一的区别是名称
Bitbucket可视化显示(提交)历史中的当前关系,但它必须以相同的方式显示功能新功能
和功能内核
,就像源自它们后面某个分支一样-在这种情况下,主功能
我还认为,在分支视图中显示为父分支的分支始终是主分支(
master
)或创建请求的分支,而不仅仅是“最近的分支”。若要查看分支之间的真实关系,请使用提交视图(在Bitbucket中)或gitk
或等效项。首先,git分支
没有选项-b
。也许你的意思是git checkout-b功能新功能内核
?第二,Git没有父分支的概念,尽管我理解你的意思。如果feature kernel
和master
在创建feature new feature
时恰好指向相同的提交,那么我们可以说feature kernel
和master
都是“父分支”。@ElpieKay哦,我的天哪,是的,我是说,git checkout-b
给我一点时间,让我意识到还有一件事需要检查。您的本地“功能内核”是最新的吗?如果这个分支上有本地没有的额外提交,那么你的新分支将基于旧的提交。@ElpieKay不,它们在创建新分支时没有指向同一个提交,据我所知,必须有唯一的父级是“功能内核”,对吗?但当我转到bitbucket,然后转到Branchs并查看该方案时,我可以清楚地看到我新创建的分支来自主分支。或者我只是误解了这个方案?请记住,forking有一个非常具体的含义,它不是指git概念,而是指github概念。