Git创建新分支前需切换到development分支吗?删除原分支会影响新分支吗?
Git分支创建常见问题解答
问题1:删除源分支是否会影响新建的分支
- 完全不会出现异常,你可以放心删除
branch-a。 - Git的分支本质只是指向某一个提交记录(commit)的可变指针,不存在「子分支依赖父分支」的绑定关系。你在
branch-a上创建branch-b时,只是给branch-b分配了一个和当前branch-a指向相同commit的指针,两个分支从创建完成的那一刻起就是完全独立的。删除branch-a只是删掉了它对应的指针,只要branch-b还存在,对应的commit和历史记录就不会被Git回收,branch-b的所有代码、提交历史都能正常使用。
问题2:不同源分支创建新分支的差异,以及是否需要切换到development分支
- 两者的核心差异是新分支的初始基础代码和提交历史完全不同:你在哪个分支上执行创建操作,新分支的初始状态就和创建那一刻的源分支完全一致。比如如果
branch-a有3个还没合并到development的专属提交,那么从branch-a创建的branch-b会自带这3个提交,而从development创建的branch-b就没有这部分内容。 - 创建前是否需要切换到
development没有统一要求,完全取决于你的开发需求:- 如果你要开发的新功能需要基于主干的最新稳定代码开发,那就必须先切换到
development,拉取最新代码后再创建新分支,避免后续合并出现大量冲突 - 如果你是要在
branch-a的改动基础上做二次开发,那就直接在branch-a上创建新分支即可
- 如果你要开发的新功能需要基于主干的最新稳定代码开发,那就必须先切换到
内容的提问来源于stack exchange,提问作者user16409822
相关产品推荐
相关产品推荐

