我有一台在 CentOs 上运行的开发机器。
每当我使用 git 从 git 中提取数据时,git pull
我都会收到“权限被拒绝”问题/错误。
当我执行拉取操作时,Git 显然没有覆盖所需文件的权限。因此每次我都必须sudo git pull
让它工作。
我宁愿不这样做,sudo git pull
因为我希望每个人都能够从我们的开发服务器中提取数据。
我如何配置 git 以获得适当的权限以便能够在不使用sudo
ing 的情况下拉取?这是因为我没有正确配置git吗?如果是这样,我该如何配置 git 以允许正确的权限?
不确定这是否有帮助,但which git
揭示了这一点:
/usr/bin/git
错误示例
我执行:git commit -m "my fun message"
我得到:
错误:无法附加到 .git/logs/refs/heads/stage:权限被拒绝致命:无法更新 HEAD ref
答案1
Git本身没有任何权限。它完全依赖于操作系统级别的权限。
如果您是唯一使用该 git 存储库的人,请执行以下操作:
cd dir_of_repo
sudo chown -R ${LOGNAME} $(pwd)
sudo chmod -R u+rwX $(pwd)
如果您与其他人分享此内容,那么您可能需要阅读了解 UNIX 权限和 chmod。