我目前在私人服务器上切换到gitolite + gitlist。 虽然gitolite工作正常,但gitlist和gitweb都没有。 在gitlist中我可以看到testrepo和我自己的,gitlist告诉我
Oops! fatal: Failed to resolve HEAD as a valid ref.
配置看起来有效......
[git]
client = '/usr/bin/git' ; Your git executable path
repositories = '/var/www/gitolite/repositories/' ; Path to your repositories
; You can hide repositories from GitList, just copy this for each repository you want to hide
; hidden[] = '/var/www/projects/BetaTest'
hidden[] = /var/www/gitolite/repositories/gitolite-admin.git
[app]
debug = false
; If you need to specify custom filetypes for certain extensions, do this here
[filetypes]
; extension = type
; dist = xml
...还有存储库
drwxr-xr-x 7 git git 4096 Sep 23 11:53 .
drwxr-xr-x 5 git git 4096 Sep 23 00:19 ..
-rwxr-xr-x 1 git git 23 Sep 23 00:19 HEAD
drwxr-xr-x 2 git git 4096 Sep 23 00:19 branches
-rwxr-xr-x 1 git git 66 Sep 23 00:19 config
-rwxr-xr-x 1 git git 386 Sep 24 17:27 gl-conf
drwxr-xr-x 2 git git 4096 Sep 23 00:19 hooks
drwxr-xr-x 2 git git 4096 Sep 23 00:19 info
drwxr-xr-x 109 git git 4096 Sep 25 00:24 objects
drwxr-xr-x 4 git git 4096 Sep 23 00:19 refs
和HEAD
cat HEAD
ref: refs/heads/master
任何想法?
答案 0 :(得分:0)
检查你的标签和分支。
如果您有一个名为master
的标记,那么带有-b master
选项的git clone
git repo也可以正常工作! (-b
采用分支名称或标记)
答案 1 :(得分:0)
我也遇到了这个问题。
在裸存储库“repoName.git”中可能存在以下文件:
-rw-r--r-- 1 git git 23 Sep 19 11:37 HEAD
内容:
ref: refs/heads/master
。类似的帖子建议检查此文件的访问权限。
但是当我检查文件repoName.git/refs/heads/master
时,它拥有这些权利
-rw------- 1 git git 41 Mar 13 15:22 refs/heads/master
。
因此,我可以通过更改此文件的权限来解决此问题(实际上我授予了更多,您可以尝试减少权限):
<强> chmod go+r repositories
强>
其中'repositories'是gitolite的存储库目录。