【问题标题】:Git unable to create file permission deniedGit无法创建文件权限被拒绝
【发布时间】:2012-08-18 03:23:13
【问题描述】:

我正在使用 Amazon EC2 托管一个通过 git 部署到服务器的网站。我之前在相同类型的 EC2 Ubuntu Linux Server 实例上使用过本教程,它运行良好。但是,当我尝试推送到服务器时,我收到以下错误跟踪:

教程:http://toroid.org/ams/git-website-howto

追踪:

$ git push origin master

Counting objects: 5, done.
Writing objects: 100% (3/3), 250 bytes, done.
Total 3 (delta 0), reused 0 (delta 0)
remote: error: unable to create file index.html (Permission denied)
To ssh://ubuntu@myserv.er/var/www/website.git
   8068aac..04eae11  master -> master

目前我在存储库中只有一个文件,即index.html

错误跟踪显示创建文件的权限被拒绝。请问你能告诉我哪里出错了吗?

【问题讨论】:

    标签: linux git ubuntu


    【解决方案1】:

    我相信如果你跑了

     sudo chown -R git:git /srv/git/ 
    

    这是来自How to fix permission denied for .git/ directory when performing git push?

    【讨论】:

    • +1 命令对我有用,但链接指向一个不相关的问题
    【解决方案2】:

    您可能没有完成教程的这一部分:

    首先,工作树(上面的 /var/www/www.example.org)必须可由运行钩子的用户写入(或者用户需要 sudo 访问权限才能运行 git checkout -f 或类似的东西)。

    【讨论】:

    • 那么 Windows 上的 Git 呢?尽管我是管理员和控制台,但我现在面临此权限被拒绝错误,它也以管理员身份运行。这就像一场噩梦......
    【解决方案3】:

    仅供参考,我遇到了这个错误,因为我做了一个挂钩来更新单独的网站根目录中的文件。例如:

    /var/www/project.git  # (where we push updates)
    /var/www/project.com  # (where the website exists)
    

    我忘记将组权限添加到 project.com 目录。这使得一切正常,一旦我进行下一次提交/推送,index.html 就会出现在 /var/www/project.com 目录中!

    假设您将用户添加到“开发人员”组,则完整的代码使其工作:

    sudo chmod -R g+ws /var/www/project_name.git
    sudo chgrp -R developers /var/www/project_name.git
    sudo chmod -R g+ws /var/www/project_name
    sudo chgrp -R developers /var/www/project_name
    

    以及共享仓库的 git 设置:

    git config core.sharedRepository group
    

    【讨论】:

      【解决方案4】:

      您的防病毒软件或其他程序可能会阻止将该文件写入您的文件夹。如果您仔细观察,您会发现所有其他文件都已创建,除了权限被拒绝的文件。 您可能拥有阻止创建某些文件类型的保护软件,无论您登录的用户类型是什么,在您禁用该软件之前都不会创建该文件。

      因此,对于那些运行 Windows 的用户,请检查您的防病毒软件是否不支持此操作。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2012-06-14
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多