一、创建一个版本库,选择一个合适的地方,创建一个空目录:
$ mkdir learngit
$ cd learngit
$pwd
/root/test/learngit/
通过git init 命令将这个目录变成git可以管理的仓库:
root@zrjdebian:~/test/learngit# git init
Reinitialized existing Git repository in /root/test/learngit/.git/
二、远程库设置
1.生成公钥私钥,提交到GitHub的ssh key里
$ ssh-keygen -t rsa -C "15******88@qq.com"
将.pub公钥提交到GitHub设置里面的ssh密钥管理。
2.在GitHub上新建repo,clone里面默认使用https提交同步,在虚拟机里面每次使用git push -u origin master同步都会提示输入账号密码,解决方案是修改clone的方式为ssh。
3.查看clone 地址:git remote -v,更换时需要先移除之前的https方式:git remote rm origin ;在GitHub上的对应库里面的clone or download里面把https切换为ssh。
4.git remote add origin git@github.com:zrjkop/learngit.git重新提交远程库设置;
5.git push origin master,同步数据。
另外的虚拟机在GitHub添加新的ssh key无法使用,无法clone远程库:
需要把生成的秘钥添加的ssh中,ssh-add id_rsa
ssh -T git@github.com测试连接:
会显示该秘钥可以访问的GitHub用户信息
Hi zrjkop! You've successfully authenticated, but GitHub does not provide shell access.
如果ssh-add不成功,请先 ssh-agent bash后在 ssh-add 即可
三、重装debian系统后(需要重新生成key并提交到GitHub)再次提交远程库出问题:
root@zrj-debian:~/test/learngit# git push origin master
To github.com:zrjkop/learngit.git
! [reje