gpt4 book ai didi

git - 'git checkout' 没有创建本地分支来匹配远程跟踪分支

转载 作者:太空狗 更新时间:2023-10-29 14:28:58 25 4
gpt4 key购买 nike

在一台机器上,调用 git checkout 不会创建本地分支。

例如,如果我有一个远程跟踪分支 origin/master,我可以调用 git checkout origin/master,它会正常工作,让我进入 headless 状态。

但是如果我尝试调用 git checkout master,我会得到错误 error: pathspec 'master' did not match any file(s) known to git.

我在另一台机器上试过了,效果很好。

他们安装了完全相同版本的 git (2.15.0.windows.1)。 git config --list 显示了一个区别。它正常工作的机器在其配置中有以下行:

remote.origin.fetch=+refs/heads/*:refs/remotes/origin/*

什么会把它放在本地配置中,为什么其中一个系统可能会丢失它,解决问题的正确方法是什么?

最佳答案

先回答最后一部分:

and what is the proper thing to do to fix the problem?

此时最简单的事情就是运行:

git config remote.origin.fetch '+refs/heads/*:refs/remotes/origin/*'

以便添加此配置行。

描述

这个:

remote.origin.fetch=+refs/heads/*:refs/remotes/origin/*

remote.origin.fetch 的正常标准设置.

What would put that in the local configuration,

运行:

git clone <url>

将这样做,作为这六步的第 4 步 clone过程:

  1. 如果/适当时创建新目录。 (如果愿意,您可以将它指向现有的空目录。)
  2. 运行 git init在空目录中。
  3. 运行任何指定的 git config在新的空存储库中进行操作。
  4. 运行 git remote add origin <url> .
  5. 运行 git fetch origin .
  6. 运行 git checkout <branch> , 其中<branch>通常默认为 master .

why might it be missing from one of the systems,

运行 git clone .如果您自己执行这些步骤,并做一些奇怪的事情而不是第 4 步,您将获得此设置。某些 Windows 版本的 Git 中可能存在某种错误,因为我最近看到了几个发生这种情况的问题。

(注意:运行 git clone --single-branch -b <branch> 会将 git remote add 步骤重定向到使用 -t <branch> ,这样 remote.origin.fetch 将被设置为标准设置以外的值。顶部的 git config 命令将覆盖非-标准设置与标准设置。)

关于git - 'git checkout' 没有创建本地分支来匹配远程跟踪分支,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47295741/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com