加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Linux > 正文

linux – 没有足够的权限推动通过智能HTTP Git共享回购

发布时间:2020-12-13 22:47:24 所属栏目:Linux 来源:网络整理
导读:我正在尝试为我们的团队评估git,其中一个要求是使用HTTPS作为传输方法.我一直在尝试使用新的智能HTTP传输来关注 git-http-backend文档以及一些稀疏的博客,但我只是没有让它工作.我知道这可能是一些愚蠢的事情,但是我已经把它的大脑绞尽脑汁无济于事.不要用gi
我正在尝试为我们的团队评估git,其中一个要求是使用HTTPS作为传输方法.我一直在尝试使用新的智能HTTP传输来关注 git-http-backend文档以及一些稀疏的博客,但我只是没有让它工作.我知道这可能是一些愚蠢的事情,但是我已经把它的大脑绞尽脑汁无济于事.不要用git假设任何真正的知识,我对这个工具很新.

现在我可以克隆HTTP就好了,但是当我尝试推送时,客户端获得:

$git push
Username:
Password:
Counting objects: 4,done.
Delta compression using up to 4 threads.
Compressing objects: 100% (2/2),done.
Writing objects: 100% (3/3),291 bytes,done.
Total 3 (delta 0),reused 0 (delta 0)
error: unpack failed: unpack-objects abnormal exit

服务器Apache错误日志说:

error: insufficient permission for adding an object to repository database ./objects

fatal: failed to write object

Apache配置:

SetEnv GIT_PROJECT_ROOT /opt/git
SetEnv GIT_HTTP_EXPORT_ALL
ScriptAlias /git/ /usr/libexec/git-core/git-http-backend/

<Location /git>
        AuthType Basic
        AuthName "Private Git Access"
        Require valid-user
        AuthUserFile /opt/git/passwords
</Location>

显然我的第一个想法是文件权限,所以我做了一个快速的chown -R apache:/ opt / git

# ls -l /opt/git
drwxr-xr-x. 7 apache apache 4096 Aug 12 11:06 project.git

但我仍然得到同样的错误.

谢谢,非常感谢我能得到的任何帮助.

解决方法

试试跑步:

git repo-config core.sharedRepository true

这为我解决了类似的问题.来自文档:

core.sharedRepository

If true,the repository is made shareable between several users in a
group (making sure all the files and objects are group-writable).

你能验证这里给出的步骤(这肯定是权限/组问题):

http://parizek.com/?p=177

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读