我正在尝试使用一个使用git作为后备存储的程序(我是git的新手).在初始化时,该程序执行以下操作:
"git" "--bare" "rev-parse" "refs/heads/index"
Run Code Online (Sandbox Code Playgroud)
结果如下:
fatal: Not a git repository: '/home/david/blog.git'
我跟着这个教程,git init,git add test.txt和git commit.当我(在正确的目录中)(例如)时,repo似乎表现得正常:
$ git status
Run Code Online (Sandbox Code Playgroud)
什么是rev-parse做什么我必须做我的回购,使其工作?
如果git status正在运行,那么您必须位于具有工作树的非裸存储库中.git status需要一棵工作树.
如果程序正在运行,git --bare ...那么它期望给定目录是一个裸git存储库,即没有工作目录.
命名约定reponame.git通常保留用于裸存储库,而非裸存储库通常使用目录名称reponame并包含.git子目录.
如果/home/david/blog.git实际上是非裸存储库,则它将具有.git子目录.如果是这种情况,您可以指出该程序,/home/david/blog.git/.git但我不禁感到将它指向一个真正的裸存储库会更安全.它是什么程序以及初始化其数据存储的说明是什么?`