前言:
github跟gitlab的区别,前者是对个人,后者是对于项目。
而问题就来了,一个github配置了多个ssh,可以吗? 不可以,之后的ssh会覆盖之前的。单一key/value(同样的概念)。
如果你想要使用 SSH url 克隆的话,你必须是这个项目的拥有者。否则你是无法添加 SSH key 的。
https和SSH的区别:
1、前者可以随意克隆github上的项目,而不管是谁的;而后者则是你必须是你要克隆的项目的拥有者或管理员,且需要先添加 SSH key ,否则无法克隆。
2、https url 在push的时候是需要验证用户名和密码的;而 SSH 在push的时候,是不需要输入用户名的,如果配置SSH key的时候设置了密码,则需要输入密码的,否则直接是不需要输入密码的。
-------------------------------我是华丽丽的分界-------------------------------------
前端的宝宝们别害怕啊,github是一个纸老虎啊,花点心思,你也能屌屌的玩转。废话不多,直接教你怎么操作。温馨提示,系统为windows 7。
首先,跟把大象关进冰箱是一样,总共分三步,前提的前提是,你得有github账号,跟git 。(别BB了,我们要方法!
第一步,打开冰箱门,(听说你想复制黏贴?省省吧宝宝,敲一遍,怎样都会让你记住)设置git的user name和email:
会有的坑:宝宝们 config后面有空格 ,注意name跟email后面同样是有空格的。
第二步,把大象推进冰箱里。生成SSH密钥过程:
1.查看是否已经有了ssh密钥:
吓坏宝宝了,该找什么,盛传我该找id_rsa.pub 或 id_dsa.pub 文件。然并卵,原因是:如果没有密钥则不会有此文件夹,有则备份删除。
你是不是觉得我在扯淡,没有不显示,有还会被删除。那怎么正确找到是否有这个文件?奥义了,向下看。
2.生存密钥:
代码参数含义:
-t 指定密钥类型,默认是 rsa ,可以省略。
-C 设置注释文字,比如邮箱。
-f 指定密钥文件存储文件名。
以上代码省略了 -f 参数,因此,运行上面那条命令后会让你输入一个文件名,用于保存刚才生成的 SSH key 代码
操作:
红色 :“enter键”
黄色:y
蓝色:“enter键”
绿色:着重强调,这就是你之前校验的时候,找不到的文件。根据路径,打开id_rsa.pud(.txt文本格式)
第三步:关上冰箱门,完成配置ssh
1.打开id_rsa.pud(.txt文本格式),全选复制。
2.点击github个人头像,下拉菜单=》setting=》左侧menu SSH and GPG keys=》New SSH Key=》
"title"(标题信息,随便填写,方便日后区分),将你刚复制的id_rsa.pud的内容黏贴进“key”,确定。
github弹出界面,重新输入你的github密码。
3.校验一下,是否配置成功:
出现下面的表示你配置成功,同时填写的user.mail会收到一封标题为:[GitHub] A new public key was added to your account 发件人:GitHub
欧了~~ 你已经完成了。
既然配置完成,那再送你一份常用操作指南吧:
1.获取源码:
$ git clone git@github.com:仓库名/项目名.git
2.这样你的机器上就有一个repo了。
3.git于svn所不同的是git是分布式的,没有服务器概念。所有的人的机器上都有一个repo,每次提交都是给自己机器的repo.
仓库初始化:
git init
生成快照并存入项目索引:
git add
文件,还有git rm,git mv等等…
项目索引提交:
git commit
4.协作编程:
将本地repo于远程的origin的repo合并,
推送本地更新到远程:
git push origin master
更新远程更新到本地:
git pull origin master
补充:
添加远端repo:
$ git remote add upstream git://github.com/pjhyett/github-services.git
重命名远端repo:
$ git://github.com/pjhyett/github-services.git为“upstream”
希望你有个良好的习惯:
已有项目修改后上传先merge,不然万一出错你就老老实实的找hand版本号,回退吧。希望你有备份。