Git 学习笔记②
# Git 远程操作
# 连接远程仓库 GitHub
# 生成秘钥、公钥
Git 远程库一般使用 SSH 协议。SSH 是较可靠,专为远程登录会话和其他网络服务提供安全性的协议。它已成为每台 linux 电脑的标准配置。
我们在控制台输入 ssh-keygen -t rsa -C "your_email@youremail.com"
命令用于 ssh 生成 rsa 算法秘钥,然后所有密码为空(三个回车)。之后我们可以在 ~/.ssh
下找到 id_rsa
秘钥和 id_rsa.pub
公钥。
这对秘钥公钥将会被用于 GitHub 远程授权。
# GitHub 上添加公钥
进入 GitHub 账号,在 setting
内选择 SSH and GPG keys
在 SSH keys
右边选择 new SSH key
,然后把 id_rsa.pub
的内容复制进去,最后点击 Add SSH key
。
这样我们便成功完成了 SSH 的配置。在控制台尝试连接 GitHub 。 ssh -T git@github.com
命令可用于测试是否连接成功。
# 获取远程仓库
# 克隆 Clone
我们可以直接通过 git clone git@github.com:<名字>/<项目>
命令将一个 GitHub 上的远程仓库直接克隆到我们的本地上。
下面,我们 clone 了一个空项目作为演示。(我们所在的目录下会出现一个我们克隆的仓库的文件夹,其已经是一个完整的git仓库了)
# 远程连接仓库再 pull
我们也可以先连接远程仓库,再采用 pull 的方法获取远程仓库。注意这个方法的前提是我们有对应的权限。
我们可以使用 git remote add origin git@github.com:<名字>/<项目>
命令将我们的已经存在的本地仓库中添加一个远程仓库 origin (习惯命名)。同时可采用 git remote -v
命令查看有哪些关联的远程仓库。
接着我们可以使用 git pull origin <分支名>
命令将远程仓库的指定分支同步到本地(origin是我们之前命名的远程仓库的名字,习惯命名)。
# 更新远程仓库
我们可以使用 git push origin <分支名>
命令将我们本地的指定分支推送到 origin 上的同名指定分支。
注意,我们需要先与 origin 建立连接才可以 push 。并且实际生产中常常需要先 pull 再 push 以尽量解决本地分支与远程仓库分支的冲突。