在/ var / www / html /

我正在制作一个networking工具,并在Github上托pipe这个项目。 我想在我的机器(运行linux)上创build一个存储库,能够在本地轻松地进行testing。

我可以在/ var / www / html(已经有apache和php设置)上testing它,但是我在创build一个版本库时遇到了麻烦。 但是,如果我尝试在〜/ Documents / Github / PROJECT_NAME中创build回购,它可以很好地工作。 但是我无法从那里testing我的项目。

如何在/ var / www / html中创build一个repo,在那里我可以放置我的项目文件并在本地运行而不会出现问题?

我尝试运行sudo git init然后使用sudo git clone git@github.com:xxx/xxx.git (这就是我在〜/ Documents / Github / PROJECT_NAME上克隆我的回购,所以我已经与Github交换了SSH密钥)它没有工作:

克隆到“PrerequisiteVisualizer”中

警告:将IP地址“192.30.252.129”的RSA主机密钥永久添加到已知主机列表中。

权限被拒绝(publickey)。

致命的:无法从远程存储库读取。

请确保您拥有正确的访问权限并存在存储库。

编辑:我能够没有问题地运行

mkdir ~/Desktop/TESTING cd ~/Desktop/TESTING git init git clone git@github....

我的问题类似于试图使用var / www / html的符号链接,但它仍然是不同的。

编辑2:我想我需要澄清为什么我引用的线程不是我正在寻找。 我看到了在那里提出的解决scheme,但是请注意,只要我理解了另一个线程,他们就在他家(〜)中创build了一个目录,并使用每个用户的Web目录在本地访问它。 但这不是我想要做的。 我只想“在/ var / www / html里面创build一个仓库”,而不是在其他地方。

这个问题并不是严格的用/ var / www / html,而是用sudo。 如果你使用sudo来做git,那么你正在以不同的用户身份运行它,它不能访问你的私有ssh证书(也不应该有)。

在你指出的另一个线程中,有一个解释每个用户的www目录,这应该是解决你的问题的一种方法。 如果没有,你可以用推理来修改这个问题为什么没有。


更新:基于讨论,你需要运行git仓库的用户拥有的/ var / www / html中的所有内容。 你应该能够按照@rogerovo提出的方式来评论这个答案:

sudo chown -R _currentuser_:www-data /var/www/html && chmod -R g+sw /var/www/html