Git创建新分支时的源分支选择及远程同步问题咨询
Git新手分支创建常见问题解答
Hey there! I get it, Git branching can feel a bit tricky when you're just starting out—let's break down your two questions nice and clearly.
Q1: 使用git checkout -b BranchName创建新分支时,源分支是master还是当前所在分支?
Short answer: 它会基于你当前所在的分支来创建新分支,不是固定的master哦。
举个例子:
- 如果现在你正处在
master分支下,运行git checkout -b feature/login,新的feature/login分支就会以当前本地的master为基础。 - 但如果你之前切换到了
dev分支(用git checkout dev),再运行同样的命令,新分支就会以dev的当前状态为源分支。
你可以随时用git branch命令查看自己当前在哪个分支——前面带*的就是当前分支。
Q2: 若源分支本地版本与远程不同步,创建新分支时会自动拉取远程更新吗?
Nope,这个命令不会自动拉取远程更新。它只会完全基于你本地当前分支的现有状态来创建新分支。
举个场景:假设你本地的dev分支比远程的origin/dev少了几个提交,这时候直接运行git checkout -b feature/payment,新的feature/payment分支只会包含你本地dev的内容,不会自动去拉取远程的最新更新。
如果想要基于远程的最新状态创建新分支,你需要先在当前分支上运行git pull(把远程更新拉到本地),确认本地和远程同步后,再执行git checkout -b BranchName。
内容的提问来源于stack exchange,提问作者Ankush Jain
相关产品推荐
相关产品推荐

