28

我想基于其他分支创建本地分支。例如我输入:

git checkout -b feature1 release1.1.3

之后我得到:

fatal: git checkout: updating paths is incompatible with switching branches.

这有什么问题?

4

4 回答 4

34
git branch <new-branch-name> <existing-branch-name>
于 2017-02-10T17:55:06.503 回答
19

要基于另一个分支创建一个分支,最简单的方法是首先检出基础分支,然后从那里创建一个新分支。如果我正确理解您的问题,那正是您想要做的。

现在,当您-b在分支中使用标志时,您可能有想要保留的工作更改。如果是这种情况,您应该将它们推送到存储区,检查基本分支,创建新分支,然后弹出存储区。

于 2013-02-22T14:57:40.547 回答
14

git pull首先确保所有本地分支机构都是最新的。然后你可以剪断树枝。

语法是

$ git checkout -b <branch> --track <remote>/<branch>

或者

$ git checkout <remote>/<branch> -b <branch>
于 2013-02-22T14:58:46.653 回答
4

您的意思是git branch feature1 release1.1.3假设您希望一个名为 feature1 的分支基于 release1.1.3 提交。您在那里调用的内容也应该有效,但您的工作树中还有一个名为“release1.1.3”的实际文件夹,git 对您是指分支/标签还是文件夹感到困惑。

您可以尝试仅提供 release1.1.3 的实际提交 ID。

于 2013-02-22T14:57:11.870 回答