我一直在寻找一种在连接到使用SSL的Git服务器时安全地存储凭据的方法。我在@james-ward上看到了这个建议(我所做的唯一修改是更新了我们的“系统”配置,而不是Git (https://stackoverflow.com/a/14528360/6195194)的“全局”配置)。
sudo apt-get install libgnome-keyring-dev
cd /usr/share/doc/git/contrib/credential/gnome-keyring
sudo make
git config --system credential.helper /usr/share/doc/git/contrib/credential/gnome-keyring/git-credential-gnome-keyring然后我就可以跑了
git clone https://ipaddress/git/repo.git而凭证帮助器将存储我的凭证,但是当我运行以下命令时:
sudo git clone https://ipaddress/git/repo.git testfolder它给出了以下错误
** (process:3713): CRITICAL **: Error communicating with gnome-keyring-daemon我有时需要运行sudo git clone,因为有时我需要创建克隆的目录需要它。任何帮助都将不胜感激。
我使用的版本:- git版本1.9.1 - Ubuntu Server 14.0.4
提前感谢你!-Richard O。
发布于 2016-04-13 09:08:50
我有时需要运行sudo git clone,因为有时我需要创建克隆的目录需要它。任何帮助都将不胜感激
您尝试将存储库克隆到的文件夹是由根用户创建的,因此除非您是根用户(sudo),否则您没有在该文件夹下写入或创建文件夹的权限,请设置权限(chmod或chown),然后您可以克隆到该文件夹中。
chmod 755 /path发布于 2016-04-13 14:15:23
使用sudo以根用户身份运行命令。这就像要求您的系统管理员(如果您有)为您运行命令。根用户不能做任何与开发相关的事情,因此git不能用作根用户。
一旦您以另一个用户(root或任何其他用户)的身份运行一个命令,预计该其他用户将无法与您的普通用户进行正常通信(特别是,它在此处找不到您的gnome-keyring-daemon )。
所以,答案是:“不要那样做”。如果您确实需要在特定目录中克隆,请按照CodeWizard的回答中的建议为自己授予对该目录的权限。实际上,如果你需要克隆一个你没有权限的目录,问问你自己你是否做错了什么:原则上,这不应该发生(我的猜测是:你过去已经使用了太多的sudo,这就是为什么你在这里和那里有可写的目录的原因)。
https://stackoverflow.com/questions/36585496
复制相似问题