之前写了一个git仓库与项目文件分离的博客,现在补充一下本地git仓库对应多个远程库的介绍,前一篇博客写到将服务端项目文件与git仓库分离开来,那么我们需要对新项目进行测试的时候肯定不能再现有项目上进行测试了,我们就需要新分出一个域名用于存放测试项目,当测试没问题后再将新项目推送到线上运行的项目。线上运行的项目源码我们是单独存放,那么测试的项目就不需要了,可以直接放到git仓库下面,这里就说一下如何让本地一个git仓库对应多个远程仓库。
1.远程git仓库
上一篇博客介绍了项目文件跟仓库分离的方法,这里不再说明了,我们可以把线上运行的仓库名称命名为vps,也就是上篇博客写到的那个,我们在服务端再新建一个文件夹(这里命名为demo2)用于存放测试文件,先对文件夹进行git初始化
cd demo2
git init
然后进入到新生成的.git文件目录下改一下config文件
cd .git
cat > config //输入下面两行代码
[receive]
denyCurrentBranch = ignore
然后空格按ctrl+D保存
这样我们线上就有了两个项目文件,一个对应线上运行的项目(vps),一个对应测试项目(origin)
2.本地git仓库
若是本地已经有git仓库了,我们直接添加远程库即可
git remote add vps xxx://xxx@xxxx //线上运行的项目仓库名命名为vps,xxx://xxx@xxxx 服务器地址可参考上一篇博客
git remote add origin xxx://xxx@xxx //线上测试的项目仓库命名为origin
这样就将本地仓库与线上的连接起来了,我们在本地开发新功能后,先将更新推送到线上测试的项目仓库中
git add .
git commit -m " "
git push origin master
当测试没问题了,再将更新推送到线上运行的项目
git push vps master
当然,测试项目我们可以添加多个分支用于分支管理,一般来说分为三个分支,develop开发版,feature测试版,master稳定版,每次从develop分支拉取推送更新,没问题了就合并到feature分支中,测试一段时间后再合并到master分支,最后确认无误了就推送到线上运行的版本,线上一般两个分支就够了,feature分支跟master分支,feature分支是线上跑的项目分支,master分支是当出现bug后可以马上切回来。