基于另一个分支创建git分支

基于另一个分支创建git分支,git,git-branch,Git,Git Branch,我想在其他分支的基础上创建本地分支。例如,我键入: git签出-b功能1版本1.1.3 之后我得到: fatal:git签出:更新路径与交换分支不兼容。 这有什么问题?您的意思是git branch feature1 release1.1.3假设希望名为feature1的分支基于release1.1.3提交。你在那里所说的也应该起作用,但你的工作树中还有一个名为“release1.1.3”的实际文件夹,git对你指的是分支/标记还是文件夹感到困惑 您可以尝试只提供release1.1.3的实际提

我想在其他分支的基础上创建本地分支。例如,我键入:

git签出-b功能1版本1.1.3

之后我得到:

fatal:git签出:更新路径与交换分支不兼容。


这有什么问题?

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


您可以尝试只提供release1.1.3的实际提交id。

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


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

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

语法是

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

$git checkout/-b
git分行

是否存在
版本1.1.3
?查看此问题。
git checkout-b
是否有效,这看起来像OP有什么,或者没有?此答案设置
新分支名称
,以从远程跟踪
现有分支名称
,这意味着如果您在签出此分支的情况下推送更改,它们将被推送到远程上的另一个分支。需要注意的是,用户需要使用:
git push-u origin new branch name
跟踪分支创建,以便将新分支跟踪到远程上的类似分支。
$ git checkout <remote>/<branch> -b <branch>
git branch <new-branch-name> <existing-branch-name>