在远程服务器中,我设置了一个接收后挂钩,以便对我的存储库进行 git checkout:
#!/bin/sh GIT_WORK_TREE=/var/www/<website> git checkout -f
但是当我从本地机器推送到服务器中的 git 存储库时,我收到以下错误消息:
remote: error: unable to unlink old '<file>' (Permission denied)
这出现了很多次,几乎每个文件都有一条错误消息。
但是我有一个可以使用 git 更改的 README.txt 文件,以下是它的权限:
-rw-r--r-- 1 <serverusername> <serverusername> 2939 Aug 2 10:58 README.txt
但是具有完全相同所有者和相同权限的其他文件给了我这个错误。
在另一个网站的另一个本地存储库中,我以我的本地计算机用户名作为所有者的文件,当我推送到远程服务器时,它尊重文件的远程服务器所有者并且像魅力一样工作。
显然这似乎是一个与权限相关的错误,但我找不到修复它的方法,有什么建议吗?
当您必须取消链接文件时,您必须对目录具有权限’w’,文件在哪个文件中,而不是文件…