Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ssh/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
部署密钥在git拉取上不起作用_Git_Ssh_Version Control_Bitbucket - Fatal编程技术网

部署密钥在git拉取上不起作用

部署密钥在git拉取上不起作用,git,ssh,version-control,bitbucket,Git,Ssh,Version Control,Bitbucket,我在bitbucket上有一个私有回购协议,并且设置了部署密钥。它们的密钥位于我的服务器的/root目录中,我的项目位于主目录中。(IDK,如果有区别的话) 我已经尝试将存储库克隆到服务器上,它似乎可以工作……这意味着它不会要求我进行任何类型的身份验证 但是,如果我从服务器上的存储库运行一个git pull,它会要求我进行身份验证。我一定是错过了一些简单的东西,但我看不出它是什么。问题是我很久以前就用https克隆了我的“工作”repo,所以远程设备是用https设置的 当我向bitbucket

我在bitbucket上有一个私有回购协议,并且设置了部署密钥。它们的密钥位于我的服务器的/root目录中,我的项目位于主目录中。(IDK,如果有区别的话)

我已经尝试将存储库克隆到服务器上,它似乎可以工作……这意味着它不会要求我进行任何类型的身份验证


但是,如果我从服务器上的存储库运行一个
git pull
,它会要求我进行身份验证。我一定是错过了一些简单的东西,但我看不出它是什么。

问题是我很久以前就用https克隆了我的“工作”repo,所以远程设备是用https设置的

当我向bitbucket添加部署密钥时,它自动将repo clone链接更改为SSH。当我复制链接以尝试克隆SSH时(在我的git
git pull
失败后),我复制了SSH链接

我没有意识到我的遥控器是用
https
设置的,bitbucket将默认设置更改为
ssh

我的解决办法是这样做

git remote rm origin 
git remote add origin git@bitbucket.org...

然后一切都很顺利。

问题是我很久以前就用https克隆了我的“工作”repo,所以远程设备是用https设置的

当我向bitbucket添加部署密钥时,它自动将repo clone链接更改为SSH。当我复制链接以尝试克隆SSH时(在我的git
git pull
失败后),我复制了SSH链接

我没有意识到我的遥控器是用
https
设置的,bitbucket将默认设置更改为
ssh

我的解决办法是这样做

git remote rm origin 
git remote add origin git@bitbucket.org...

然后一切都很顺利。

您是通过
ssh
还是
https
克隆存储库的?是通过ssh
git@bitbucket.org...
您是否配置了
git config--global user.name
和``git config--global user.email`?在我的回答中发布的解释您是否通过
ssh
https
?通过ssh克隆
git@bitbucket.org...
您是否配置了
git-config--global user.name
和``git-config--global user.email`?我的答案中给出了解释