https://github.com/fefefe/test.git
git@github.com:fefef/test.git
这两个地址展示的是同一个项目,但是这两个地址之间有什么联系呢?
前者是https url 直接有效网址打开,但是用户每次通过git提交的时候都要输入用户名和密码,有没有简单的一点的办法,一次配置,永久使用呢?当然,所以有了第二种地址,也就是SSH URL,那如何配置就是本文要分享的内容。
GitHub配置SSH Key的目的是为了帮助我们在通过git提交代码是,不需要繁琐的验证过程,简化操作流程。
我们可以在coding、gitee和github上面自己创建一个项目,过程就不在这里赘述了,反正过程很简单的,然后下面我们使用的是ssh协议,这个我觉得是比https好用很多的,不过配置会稍微麻烦一点
先说明,这次全程都是使用的coding的,其他两个的使用也差不多,可以自己看着来操作一下
配置ssh密钥
先打开命令行窗口
修改git的名字和邮箱
git config user.name "你的名字"
//要和coding自己的名字一样
git config user.email "你的邮箱地址"
//这个也是和coding设置的一样
如果不加后面的字符串就是查询现在的user.name,如果是和coding的不一样才使用上面的语句修改
就是在个人信息里面可以看到的,和自己的一样就行
生成ssh密钥
ssh-keygen -t rsa -C "your.email@example.com"
这里我就懒得再来一次了,因为覆盖了我得重新去配置,反正过程比较简单的,但是过程有几步需要操作的地方
Enter file in which to save the key (/Users/you/.ssh/id_rsa): [Press enter] // 推荐使用默认地址
Enter passphrase (empty for no passphrase): //后面直接回车结束
//后面再生成一个莫名其妙的四方形图加一些点的就是成功,否则就是失败
这个地址的话其实是可以改的,比如你的coding和github等是有不一样的用户名和邮箱的话,他们生成的ssh会不一样,所以是得去执行上一步的git config去修改名字和邮箱的,然后我们只需要把.ssh的电脑地址复制下来就可以了,一般情况下的.ssh,在C:\Users\用户名.ssh下面,就复制自己电脑的地址加一个名字就好了,比如我的,我设置地址的时候写的是C:\Users\用户名.ssh\coding,默认的话就是id_rsa
因为我的coding和github的名字和邮箱不一样(你们最好别这样,太憨憨了,搞得麻烦几步),所以我的有上面两个结果
基本有两个文件就没有问题了,known_hosts默认是没有的,这个是发起连接之后会自动生成的,不用担心
配置ssh密钥
然后就是给项目添加一下ssh密钥了,打开coding右上角的个人账户设置就看得到ssh公钥了,
点击新增公钥,然后找到.ssh文件夹下面你自己创建的那个名字,比如我的是coding.pub,然后复制里面的全部,放到公钥内容里面,然后输入密码就好了
首次创建之后呢肯定需要先链接一下,让他可以正常链接
信任主机连接
ssh -T git@e.coding.net
//coding用这条
ssh -T git@github.com
//github用这条
然后就基本没啥问题了,这就是基本的创建过程
如果说之前我们的git项目使用http拉下来的,那我们就需要到.git仓库的config里面修改一点东西
把里面的url改成ssh的地址就好了,ssh的地址在克隆那里就可以找的到
配置完ssh密钥之后就可以对项目进行拉取和其他操作了
git操作
先在本地创建一个项目,然后按顺序执行下面的操作
- git init,初始化项目仓库,生成.git文件
- git remote add origin <项目地址(ssh地址)>,然后将仓库远程连接到服务器,方便等下的拉取
- git branch -r,查看远程服务器有什么分支
- git checkout <有项目的分支>,转到有项目的那个分支,因为可能是别人创建的项目
- git pull,把他的代码放到自己的文件夹里面,这里如果修改到自己的分支的话文件也会随之改变,所以最好先不要创建自己的分支
- git checkout -b ,新增并且跳到自己的分支
- git push origin ,把自己的本地分支发送到远程服务器上,使用git branch -r检查有没有成功,没有成功的话再看看是啥错误吧
- git add .,这个是吧所有修改过的文件放到本地仓库,选择当个文件的可以去另一个文件中看具体操作
- git commit -m “这次上传的注释”,上传了什么的大概描述
- git push,把仓库的文件全部上传
- git status,检查是否上传完成
然后就已经算是把项目的基本搞完了,后面只需要在自己的电脑上修改然后上传就好了,更多的git命令我觉得可以去看看阮一峰老师的笔记