我正在将一个 svn 存储库迁移到 git。我创建了一个干净的临时目录,使用 git svn init 在其中获取内容,然后添加遥控器并推送它。现在在另一个实际的源目录(在从 svn 提交内容之前,我从空仓库中克隆了它)我做了一个提取。然后我进行了结帐并收到了上述消息。过了一会儿,我想我可以通过拉动获得源并做到了。我的问题是该错误消息在这种情况下意味着什么?我是如何得到那个特定的错误信息的?免责声明:我是一个 git 新手
问问题
33787 次
2 回答
12
我相信这是因为您的 fetch 仅获取远程 refs 和提交,并没有为您提供本地master分支来结帐。由于你在一个空的仓库中,你从来没有在一个分支上,所以你git checkout
没有主分支可以去。
您可以通过显式命名远程主机来直接签出远程主机,git checkout origin/master
但这会使您处于分离的头部状态。
一旦你完成了拉取,它获取并合并,拉取创建了一个本地主节点来跟踪远程主节点。
于 2011-08-16T18:47:20.853 回答
1
我在尝试将 svn 迁移到 git 时遇到了同样的错误。这是我的修复。
确认你已经初始化了 git repo:
git init
确认您确实从 svn 进行了有效迁移:
git branch --remote
#You should see this output:
#git-svn
创建一个分离的头:
git checkout git-svn
将分离的头部转换为主分支:
git checkout -b master
此时您的 git repo 将正常运行。
于 2016-06-28T15:12:19.507 回答