git日常报错

Permission denied (publickey)

已生成并添加 SSH 密钥的情况下报错:

1
2
3
4
5
Permission denied (publickey).
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.

实测在 .ssh 文件夹中执行

1
ssh-add id_rsa

提示:Identity added: id_rsa (id_rsa)即可。

git clone 报403错误

由于某些原因项目由GitLab迁移至Coding托管,而本地需要重新部署,本地重新克隆远程仓库时出现了403错误:

root@xxx: git clone https://git.coding.net/xxxxxxxx/xxxx.git
cloning ‘xxx’…
remote: Coding.net Tips : [You have no permission to access this repo.]
fatal: unable to access ‘https://git.coding.net/xxxxxxxx/xxxx.git/‘: The requested URL returned error: 403

经查阅是因为本地缓存了错误的密码(其实保存的是之前项目仓库的密码,现在克隆的仓库还没有声明账号和密码)。
这种情况下其中一种解决办法就是克隆时将账号和密码也添加到~/.git-credentials

http://username:password@git.coding.net/xxxxxxxx/xxxx.git


如果是首次使用Coding配置项目,是需要在账号下填写密钥滴。如同GitHub或GitLab使用时的配置方法。

git clone 需要服务器密码

1
2
3
4
5
6
ssh-agent -s
然后会提示类似的信息:
SSH_AUTH_SOCK=/tmp/ssh-GTpABX1a05qH/agent.404; export SSH_AUTH_SOCK;
SSH_AGENT_PID=13144; export SSH_AGENT_PID;
echo Agent pid 13144;
1
2
3
4
5
6
7
8
9
ssh-add ~/.ssh/id_rsa
这时候应该会提示:
Identity added: ...(这里是一些ssh key文件路径的信息)
(注意)如果出现错误提示:
Could not open a connection to your authentication agent.
请执行命令:eval `ssh-agent -s`后继续执行命令 ssh-add ~/.ssh/id_rsa。