Git介绍(六) -- 关联远程仓库

   Git 是一个分布式版本控制工具,虽然远程仓库不是必须的,但是我们在开发中为了团队便于开发,我们还是在公司内部搭建一个远程仓库,本章小编将以 GitHub 作为我们的远程仓库来操作。讲解到这里,如果有兴趣的朋友向继续向下学习的话,请先注册一个 GitHub 账号以便学习。

配置 SSH KEY 关联 GitHub远程仓库

   SSH KEY 的配置不是必须的,但是不配置的话我们只能使用 HTTPS 协议,这样的话我们每次提交代码的时候都有输入用户名和密码,还是挺麻烦的,为了后面便于开发,还是配置一下。下面我们就看看怎么配置 SSH KEY 关联 GitHub 远程仓库。

检测本地是否存在 SSH KEY

   查看当前用户目录下是否有 .ssh 文件,如下:
在这里插入图片描述
如果查看之后有结果,则不用生产直接使用即可,如果什么没有就继续生成。

生成 SSH KEY

  生成 SSH KEY 的命令很简单,执行如下命令:

ssh-keygen -t rsa -C "yexiaomo1997@gmail.com"

注意:执行命令后,然后回车4次即可。

  然后我们可以在当前用户目录下可以看到一个名为 .ssh的隐藏文件夹,里面会有一个名为 id_rsa.pud 的文件,这个文件就是我们要使用的公钥文件。
在这里插入图片描述

登陆GitHub,设置SSH key

  首先登陆自己的 GitHub 账号,然后设置如下:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
为什么要在 GitHub 账号里设置 SSH key ?因为 GitHub 需要识别出你推送的提交确实是你自己推送的,而不是别人冒充的,Git 支持 SSH 协议,所以 GitHub 只要知道你的公钥,就可以确认只有你自己才能推送。

注意:GitHub 可以添加多个 key。假如你有多台电脑,只要你把你自己的每台电脑的 SSH key 都配置到 GitHub 上,那么我们就可以在每台电脑上往 GitHub 上推送了。

创建远程仓库

  下面,我们需要在 GitHub 上创建一个仓库,在登录成功后的首页面,直接点击左上角绿色的 New repository 按钮即可,如下:
在这里插入图片描述
在这里插入图片描述
创建成功后:
在这里插入图片描述

关联远程仓库

  创建成功之后,我们会看到仓库的地址,git@github.com:yexiaomo1997/test.git,然后我们需要将我们之前的本地仓库和这个远程仓库进行关联,使用 git remote add 命令,如下:

git remote add origin git@github.com:yexiaomo1997/test.git

在这里插入图片描述
以上命令,远程库的名字就是 origin,这是 Git 的默认叫法,也可以改变,但是 origin 这个名字一看就知道是远程仓库。

推送信息到远程仓库

推送信息到 master 分支上
  假设我们想将本地仓库的 master 分支上的内容推送到远程仓库 master 分支上,方式如下:

git push -u origin master

在这里插入图片描述
说明: -u 参数可以i在推送的同时,将 origin 仓库的 master 分支设置为本地仓库当前分支的 upstream (上游)。添加了这个参数,将来运行 git pull 命令从远程仓库获取内容时,本地仓库的这个分支就可以直接从 origin 的 master 分支获取内容,省去了另外添加参数的麻烦。这个参数也只用在第一次 git push 时加上,以后直接运行 git push 命令即可。

推送信息到其他分支
  如果想推送信息到其他分支,还是这条命令,修改一下分支的名字即可,比如我也想把我的 blog 分支推送到远程仓库中,执行命令如下:

# 切换到 blog 分支
git checkout blog

# 推送信息到 blog 分支上
git push -u origin blog

在这里插入图片描述
说明:我们先切换到 blog 分支,然后执行 git push 命令,参数含义和之前的一样,这里我们创建的远程仓库的分支名也为 blog (我们可以取任何名字,但是为了不混淆,小编建议还是取一致的名字)。这两条命令执行成功之后,这时我们可以在我们的远程仓库看到已经多了个分支,如下:
在这里插入图片描述

从远程仓库获取

 首次获取

  上面我们介绍了本地仓库关联远程仓库以及向远程仓库提交数据,既然有提交那么就有获取。我们可以通过 git clone 命令克隆一个远程仓库到本地,方式简单,首先在本地创建一个空文件夹,然后执行如下命令:

git clone git@github.com:yexiaomo1997/test.git

``
注意: 其中 git@github.com:yexiaomo1997/test.git 是你要克隆项目的 SSH 协议地址,如下:
在这里插入图片描述
上面的命令表示克隆远程仓库中的文件到本地仓库。此时克隆的远程仓库的 master 分支到本地仓库,我们可以通过 git branch -a 来查看本地仓库和远程仓库的信息,-a 参数可以同时显示本地仓库和远程仓库的信息,如下:
在这里插入图片描述
  通过上面的命令执行结果,我们可以看到远程仓库已经有了 blog 分支,如果我们向把 blog 分支也克隆下来,执行如下命令即可:

git checkout -b blog origin/blog

说明: 上面的命令表示根据远程仓库的 blog 分支创建一个本地仓库的 blog 分支,创建完成后进行切换,也可以通过如下命令只创建不切换:

git branch blog origin/blog

此时我们在我们本地仓库中 blog 分支中的 a.txt 文件进行修改并提交,如下:
在这里插入图片描述
这时,我们可以在远程仓库看到我们修改的内容,如下:
在这里插入图片描述
注意:由于这里的 blog 分支就是从远程仓库克隆下来的,所以这里可以不添加 -u 参数。

 从远程仓库更新本地仓库

  此时我们回到之前的关联 远程仓库test 的本地仓库中,我们发现该本地仓库 blog 分支中的内容和远程仓库的内容不一致,这是我们可以使用 git pull 命令进行该仓库更新,如下:
在这里插入图片描述
本章的关联远程仓库小编就介绍到这里,如有疑问请留言!!!

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值