我想基于其他分支创建本地分支。例如,我输入:
git checkout -b feature1 release1.1.3
之后我得到:
fatal: git checkout: updating paths is incompatible with switching branches.
这有什么问题?
答案 0 :(得分:17)
要基于另一个分支创建分支,最简单的方法是首先签出基本分支,然后从那里创建一个新分支。如果我理解你的问题,那就是你想要做的。
现在,当您在分支中使用-b
标志时,您可能会想要保留更改的工作。如果是这种情况,你应该将它们推到藏匿处,检查基本分支,创建新分支,然后弹出藏匿处。
答案 1 :(得分:11)
首先git pull
确保所有本地分支机构都是最新的。然后你可以削减分支。
语法是
$ git checkout -b <branch> --track <remote>/<branch>
或
$ git checkout <remote>/<branch> -b <branch>
答案 2 :(得分:10)
git branch <new-branch-name> <existing-branch-name>
答案 3 :(得分:4)
你的意思是git branch feature1 release1.1.3
假设你想要一个名为feature1的分支基于release1.1.3提交。你在那里打电话也应该有效,但你的工作树中也有一个名为'release1.1.3'的实际文件夹,git对你是指分支/标签还是文件夹感到困惑。
您可以尝试仅提供release1.1.3的实际提交ID。