Git Smart HTTP推送permisisons失败

时间:2016-08-23 13:25:54

标签: linux git apache permissions push

我是Git的新手,我试图在服务器上安装Git。我在Centos 7上安装了Git和httpd。我使用

在服务器上创建了一个基本共享项目

git init --bare --shared product / tools / DCU.git

[芯]

    repositoryformatversion = 0

    filemode = true

    bare = true

    sharedrepository = 1

[接收]

    denyNonFastforwards = true

当我按下时,git push DCU master我收到以下错误:

remote:error:将对象添加到存储库数据库的权限不足./objects

远程:致命:无法写对象

错误:解包失败:unpack-objects异常退出

我对项目的热情是:

总共24 -rwxrwxr-X。 1 apache staff 196 Aug 22 16:56 config -rwxrwxr-X。 1 apache staff 73 Aug 22 15:28 description -rwxrwxr-X。 1 apache staff 23 Aug 22 15:28 HEAD drwxrwxr-X。 2 apache staff 4096 Aug 22 15:28 hooks drwxrwxr-X。 2 apache staff 20 Aug 22 15:28 info drwxrwxr-X。 65 apache staff 4096 Aug 22 16:50对象 -rwxrwxr-X。 1 apache staff 98 Aug 22 15:29 packed-refs drwxrwxr-X。 4 apache staff 29 Aug 22 15:29 refs

cd objects /

总共12 drwxrwxr-X。 2 apache staff 51 Aug 22 15:28 06 drwxrwxr-X。 2 apache staff 51 Aug 22 15:28 08 drwxrwxr-X。 2 apache staff 96 Aug 22 15:28 0a drwxrwxr-X。 2 apache staff 51 Aug 22 15:28 17 drwxrwxr-X。 2 apache staff 51 Aug 22 15:28 19 drwxrwxr-X。 2 apache staff 51 Aug 22 15:28 1c drwxrwxr-X。 2 apache staff 51 Aug 22 15:28 24 drwxrwxr-X。 2 apache staff 51 Aug 22 15:28 29 drwxrwxr-X。 2 apache staff 4096 Aug 22 15:28 30 drwxrwxr-X。 2 apache staff 51 Aug 22 15:28 32 drwxrwxr-X。 2 apache staff 51 Aug 22 15:28 33 drwxrwxr-X。 2 apache staff 51 Aug 22 15:28 3d drwxrwxr-X。 2 apache staff 51 Aug 22 15:28 3f drwxrwxr-X。 2 apache staff 51 Aug 22 15:28 41 drwxrwxr-X。 2 apache staff 51 Aug 22 15:28 4b drwxrwxr-X。 2 apache staff 51 Aug 22 15:28 57 drwxrwxr-X。 2 apache staff 51 Aug 22 15:28 5a drwxrwxr-X。 2 apache staff 51 Aug 22 15:28 5d drwxrwxr-X。 2 apache staff 51 Aug 22 15:28 5f drwxrwxr-X。 2 apache staff 51 Aug 22 15:28 64 drwxrwxr-X。 2 apache staff 51 Aug 22 15:28 65 drwxrwxr-X。 2 apache staff 4096 Aug 22 15:28 69 drwxrwxr-X。 2 apache staff 51 Aug 22 15:28 6d drwxrwxr-X。 2 apache staff 51 Aug 22 15:28 70 drwxrwxr-X。 2 apache staff 51 Aug 22 15:28 74 drwxrwxr-X。 2 apache staff 51 Aug 22 15:28 7a drwxrwxr-X。 2 apache staff 51 Aug 22 15:28 7b drwxrwxr-X。 2 apache staff 51 Aug 22 15:28 7c drwxrwxr-X。 2 apache staff 51 Aug 22 15:28 84 drwxrwxr-X。 2 apache staff 51 Aug 22 15:28 89 drwxrwxr-X。 2 apache staff 51 Aug 22 15:28 8a drwxrwxr-X。 2 apache staff 51 Aug 22 15:28 8c drwxrwxr-X。 2 apache staff 51 Aug 22 15:28 93 drwxrwxr-X。 2 apache staff 51 Aug 22 15:28 9d drwxrwxr-X。 2 apache staff 51 Aug 22 15:28 a0 drwxrwxr-X。 2 apache staff 51 Aug 22 15:28 a2 drwxrwxr-X。 2 apache staff 4096 Aug 22 15:28 a3 drwxrwxr-X。 2 apache staff 51 Aug 22 15:28 a6 drwxrwxr-X。 2 apache staff 51 Aug 22 15:28 ab drwxrwxr-X。 2 apache staff 51 Aug 22 15:28 af drwxrwxr-X。 2 apache staff 51 Aug 22 15:28 b1 drwxrwxr-X。 2 apache staff 51 Aug 22 15:28 b7 drwxrwxr-X。 2 apache staff 51 Aug 22 15:28 b8 drwxrwxr-X。 2 apache staff 51 Aug 22 15:28 c3 drwxrwxr-X。 2 apache staff 51 Aug 22 15:28 c8 drwxrwxr-X。 2 apache staff 96 Aug 22 15:28 c9 drwxrwxr-X。 2 apache staff 51 Aug 22 15:28 cb drwxrwxr-X。 2 apache staff 51 Aug 22 15:28 cf drwxrwxr-X。 2 apache staff 51 Aug 22 15:29 d1 drwxrwxr-X。 2 apache staff 51 Aug 22 15:29 d8 drwxrwxr-X。 2 apache staff 51 Aug 22 15:29 d9 drwxrwxr-X。 2 apache staff 51 Aug 22 15:29 db drwxrwxr-X。 2 apache staff 51 Aug 22 15:29 dc drwxrwxr-X。 2 apache staff 51 Aug 22 15:29 e1 drwxrwxr-X。 2 apache staff 51 Aug 22 15:29 e7 drwxrwxr-X。 2 apache staff 51 Aug 22 15:29 e9 drwxrwxr-X。 2 apache staff 51 Aug 22 15:29 ea drwxrwxr-X。 2 apache staff 51 Aug 22 15:29 ed drwxrwxr-X。 2 apache staff 51 Aug 22 15:29 f0 drwxrwxr-X。 2 apache staff 51 Aug 22 15:29 f3 drwxrwxr-X。 2 apache staff 51 Aug 22 15:29 f5 drwxrwxr-X。 2 apache staff 6 Aug 22 15:29 info drwxrwxr-X。 2 apache staff 6 Aug 22 15:29 pack

我的apache和git用户都在员工组中,如果有默认组,则为员工组。我也尝试使用set group id位但无济于事。 http://www.gnu.org/software/coreutils/manual/html_node/Directory-Setuid-and-Setgid.html

[root @ services-git DataConversion.git] #groups apache

apache:staff git

[root @ services-git DataConversion.git] #group git

git:staff apache

Git试图写什么用户?我使用htpasswd来创建用户和密码(git / git),当我尝试推送时验证工作,但这只是在http级别,对吗?此身份验证不在操作系统级别,这是我的理解。我只是不确定Git尝试使用哪个用户。任何帮助将不胜感激。

谢谢,

戴夫

1 个答案:

答案 0 :(得分:0)

我安装了Gitlab社区,这是一个免费的解决方案。我已经搞砸了试图让git独立工作。