前言
在日常开发中我们经常会遇到这样的需求:在本地开发项目同步到Github上,同时将服务器上的代码也做更新。倘若能把 本地-Github-服务器
这三个平台关联(如图),这样就能极大的提高我们的效率。
那么大体上的思路就只分两步了:
- 将本地项目托管到Github
- 将Github上的代码同步到远程服务器端
本地项目托管到Github
先假设我们再本地的D盘目录下创建了一个test
文件夹,里面放着我们的项目代码,接下来我们需要进行如下操作将其托管到Github。
1. 本地下载安装Git环境
这一步不多做赘述,去Git官网下载Git的安装包就可以了,安装完成后打开Git Bash
应用,输入指令:
1 | $ ssh-keygen -t rsa -C "yourEmail" |
yourName
和yourEmal
分别对应你的Github用户名和邮箱
2. 添加开发机的SSH Key
SSH Key
即SSH公钥,只有我们把某台PC的SSH公钥添加到Github的设置中,我们的这台PC才能跟我们上传的项目进行同步和更改。
首先我们打开Git Bash,在命令中输入
1 | $ cd ~/.ssh |
如果列出如下目录:
1 | id_rsa id_rsa.pub known_hosts |
说明已存在SSH Key无需再生成,如果不存在则运行
1 | $ ssh-keygen |
生成id_rsa.pub
文件后,我们使用命令查看密钥
1 | $ cat id_rsa.pub |
得到的密钥大概长这样
我们将id_ras.pub
文件中的所有文本都复制下来,打开Github,选择右上角头像-Settings-SSH and GPG keys,点击选项面板中的New SSH Key
。
将自己的SSH Key添加到选项中即可,之后我们可以运行测试是否连接到Github
1 | ssh -T git@github.com |
如果出现如下提示,则说名连接成功
1 | Hi EsunR! You've successfully authenticated, but GitHub does not provide shell access. |
3. 在Github中创建空项目
我们点击右上角的“+”选择New repository
创建一个新项目,要注意一点的是:
新项目中除了题目和描述之外,不要点击任何选项,我们要的是一个完全空的项目仓库
4. 上传本地项目代码到Github
我们点击Create repository
之后,会出现一个提示,如下做讲解
1 | // 这一步是跳转到本地的项目目录,我们可以替换为cd指令跳转,cd C:/test |
之后再刷新Github页面就发现代码提交完成了。
Github代码同步到服务器
PS: 将代码下载到本地同理
1. 服务器下载安装Git环境
与上文相同,只不过是服务器端就不需要用Git Bash了
2. 添加开发机的SSH Key
与上文相同
4. 同步项目代码到服务器(本地)
首先在服务器或本地创建一个文件夹,作为项目的存放仓库,利用cd指令跳转到该文件夹下,如:
1 | $ cd /var/www/html |
初始化该目录为Git仓库
1 | $ git init |
我们在Github中打开我们的项目,之后选择Clone or download
,复制我们项目的SSH地址
将仓库远程源连接到Github上的该项目
1 | $ git remote add origin git@github.com:EsunR/test.git |
PS: 如过手滑信息填写错误,使用清除指令
$ git remote remove origin
清除源
使用Pull
指令,从远程源的主分支更新代码到服务器(本地)
1 | $ git pull origin master |
完成。