前记:一般除了首次创建的全新的项目,大多数时候,我们都是在已经存在的大型亦或是中小型项目中做出自己的贡献,因此如何克隆已有的项目,在本地进行修改,并提交自己的贡献就变得很重要啦!
1.克隆远程仓库
命令: git clone [url]
(顺便说一句:用git clone -help命令显示git clone的具体信息真的很方便)
Git支持多种数据传输协议,主要有本地协议(Local),HTTP协议 , SSH(Secure Shell)协议及Git协议。
一般用的比较多的是SSH协议,架设简单,访问安全(所有传输数据都要经过授权和加密),传输高效。
缺点就是不能匿名访问,且需要权限。
2.增加SSH公钥(前提是你是该项目的拥有者,否则无法添加SSH key)
首先确认自己是否已经拥有密钥,默认情况下,用户的SSH密钥存储在~/.ssh目录下:
> cd ~/.ssh
>ls
上述命令是寻找一对以id_dsa或者id_rsa命名的文件,其中一个带有.pub扩展名,.pub文件是公钥,另一个是私钥。
如果找不到这样的文件(或者根本没有~/.ssh目录),则需要命令生产它们。
生成密钥命令: ssh-keygen
生成密钥以后,将公钥(.pub)文件中的内容复制到github中去了。
3.https和SSH的区别
>克隆的时候
使用https协议可以随意克隆github上的项目,不管是谁的;使用SSH协议则必须是该项目的拥有者或管理员,且需要先添加SSH key,否则无法克隆。
>提交代码的时候
使用https协议拉下来的代码在push的时候需要验证用户名和密码;而SSH在push的时候,是不需要输入用户名的,如果配置SSH key的时候设置了密码,则需要输入密码,否则直接是不需要输入密码的。