我正在尝试使用一个使用git作为后备存储的程序(我是git的新手)。在初始化时,该程序执行:
"git" "--bare" "rev-parse" "refs/heads/index"
结果是:
fatal: Not a git repository: '/home/david/blog.git'
我关注了this tutorial,git init
,git add test.txt
和git commit
。当我(在正确的目录中)(例如)时,回购似乎表现得正常:
$ git status
rev-parse
做什么以及我需要做些什么才能使其成功?
答案 0 :(得分:7)
如果git status
正在运行,那么您必须位于具有工作树的非裸存储库中。 git status
需要一个工作树。
如果程序正在运行git --bare ...
,那么它希望给定目录是一个裸git存储库,即没有工作目录。
reponame.git
的命名约定通常保留用于裸存储库,而非裸存储库通常使用目录名reponame
并包含.git
子目录。
如果/home/david/blog.git
实际上是非裸存储库,那么它将具有.git
子目录。如果是这种情况,您可以将程序指向/home/david/blog.git/.git
,但我不禁感到将它指向一个真正裸露的存储库会更安全。它是什么程序以及初始化其数据存储的说明是什么?
`
答案 1 :(得分:6)
也许你需要做“git init”。