1

今天,我们的裸 git 存储库发生了一个大问题。由于某些未知的原因,它似乎已被重新初始化为标准(非裸)git repo。

奇怪的是,我仍然可以从 Netbeans IDE 拉/推它,但是如果我从命令行尝试相同的操作,我会收到此错误:

Your configuration specifies to merge with the ref 'master'
from the remote, but no such ref was fetched.

无论如何,文件都在那里,文件夹分支,挂钩,参考和其他。

如果我尝试运行git branch它什么都不会返回,如果我尝试运行git show它会返回此错误:

fatal: bad default revision 'HEAD'

我打开配置文件git config -e并将裸选项设置为false。我试图手动将其设置为 true,但没有成功,所以我尝试了git init --bare它仍然无法正常工作。

有没有办法让 git 知道所有仍然存在的数据?如果不是,恢复裸回购的最佳策略是什么?

任何帮助表示赞赏!

4

1 回答 1

1

正如“ GIT --> fatal: bad default revision 'HEAD' ”中所述,如果一个分支(如 master)在服务器上被删除,即使它不在您的本地 repo 中,也会发生这种情况。

如果裸repo真的处于奇怪的状态,最好:

  • 创建一个新的裸仓库
  • git remote add在本地 repo ( )中添加新的裸 repo url 作为远程
  • 从本地仓库推送所有内容git push --all+ git push --tags
于 2013-09-27T06:36:15.370 回答