使用SSH建立Git 远程仓库和本地库连接

  • 添加远程库有两种方式:Https和SSH方式。
  • 我这里选择SSH方式,因为HTTPS方式每次都需要用户验证,麻烦。
  • SSH每次传代码时不需要输入账号和密码(注意电脑要先配SSH的公钥),然后将地址粘贴到上面

初识github远程库与本地库连接,在学习如何用SSH添加远程库时走了一些弯路,这里将自己最终正确的顺序记录一下:


前提: 安装git

1、先设置git提交时的用户名和邮箱(初次一定要设置)

git设置用户名和邮箱:

  • 全局设置(对所有git工程都有效)
    设置用户名:git config --global user.name 用户名
    设置邮箱: git config --global user.email 邮箱

  • 对特定工程设置(要在命令行中切换到特定工程目录下执行)
    设置用户名:git config user.name 用户名
    设置邮箱:git config user.email 邮箱

git 修改用户名和邮箱:

  • 修改当前project
    用户名的命令为:git config user.name 你的目标用户名;
    提交邮箱命令为:git config user.email 你的目标邮箱名;
  • git修改全局项目
    git config --global user.name 你的目标用户名;
    git config --global user.email 你的目标邮箱名;

我这里是对全局进行了设置,如下图,可以在用户主目录下的.gitconfig文件夹下面看到所做的配置结果:
在这里插入图片描述

2、创建SSH Key

注意:先注册GitHub账号,这里不介绍,谨记:用户名和邮箱是第一步中设置的!!!

  • 创建SSH Key。在用户主目录下,看看有没有.ssh目录,如果有,再看看这个目录下有没有id_rsa和id_rsa.pub这两个文件,如果已经有了,可直接跳到下一步。如果没有,在这里打开Git Bash,创建SSH Key:
    $ ssh-keygen -t rsa -C "youremail@example.com"
    
    这里的邮件地址换成自己的邮件地址(和上面第一步中邮箱是一致的),然后一路回车,使用默认值即可。
    如果一切顺利的话,可以在用户主目录里找到.ssh目录,里面有id_rsa和id_rsa.pub两个文件,这两个就是SSH Key的秘钥对,id_rsa是私钥,不能泄露出去,id_rsa.pub是公钥,可以放心地告诉任何人。
  • 登陆GitHub,打开“settings”,“SSH and GPG Keys”页面,点击‘New SSH key’,然后填上任意Title,在Key文本框里粘贴id_rsa.pub文件的内容,然后点击’Add SSH key’即可如下:
    在这里插入图片描述在这里插入图片描述
    在这里插入图片描述
    一般来说一台电脑只需要生成一次 SSH Key 就行了,不同的 Git 远程仓库都添加这同一个 SSH Key 也就行了。

3、在GitHub上创建一个Git仓库

点击右上角加号,New repository,然后起一个名Repository name,然后直接Create repository即可,注意此时的Git仓库是空的
在这里插入图片描述

4、Git仓库和本地工程连接

本地工程即本地库,可以是你建立的vue-cli脚手架工程等,先在本地工程中打开git bash ,在上面运行如下命令:

git remote add origin git@github.com:Silence-Le/my-miaomiao.git

注意: git remote add origin后面的部分为你自己仓库上面的SSH,通过你建的git仓库可以看到;远程库的名字是origin,这是Git默认的叫法,也可以改成别的,但是origin这个名字一看就知道是远程库。
在这里插入图片描述
在这里插入图片描述

5、将本地库的所有内容推送到远程库上

  • 第一次使用git时
    $ git push -u origin master
    
    第一次推送master分支时,加上了-u参数,Git不但会把本地的master分支内容推送的远程新的master分支,还会把本地的master分支和远程的master分支关联起来,在以后的推送或者拉取时就可以简化命令。
    注意:bash: $'\302\203git': command not found错误
    出现这个错误是因为我在复制别人的命令时多了一个空格,大家注意一下,不要犯我的错误哦,如下图所示:
    在这里插入图片描述
    第一次使用Git的clone或者push命令连接GitHub时,会得到一个警告,如上图中第二个箭头执行后出现的内容,这是因为Git使用SSH连接,而SSH连接在第一次验证GitHub服务器的Key时,需要你确认GitHub的Key的指纹信息是否真的来自GitHub的服务器,输入yes回车即可。然后可以看到Git会输出一个警告,告诉你已经把GitHub的Key添加到本机的一个信任列表里了:Warning: Permanently added 'github.com' (RSA) to the list of known hosts.
    这个警告只会出现一次,后面的操作就不会有任何警告了。
    如果你实在担心有人冒充GitHub服务器,输入yes前可以对照GitHub的RSA Key的指纹信息是否与SSH连接给出的一致。
    从现在起,只要本地作了提交,就可以通过下面命令把本地master分支的最新修改推送至GitHub:
    $ git push origin master
    
    现在,我们就拥有了真正的分布式版本库!!!
  • 非第一次使用
    若是第一次使用,接上面,然后执行下面命令:
    $ git push origin master
    
    这是把本地库的内容推送到远程,用git push命令,实际上是把当前分支master推送到远程。
    在这里插入图片描述
    推送成功后,打开GitHub页面,看到远程库(git仓库)的内容已经和本地一模一样:
    在这里插入图片描述
    此时我们的远程库不再是一个空的库了!!!!
  • 6
    点赞
  • 38
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值