公司的网站之前都是使用手动部署。但是随着业务量的增加,代码越来越多,功能越来越复杂,每次更新时候都先来三炷香,祈祷着别出问题。但是总有时候会SB,可能这次资源文件没有上传,下次又是某一个地方改动的一点代码忘了更新。而且手动更新的时间会越来越长。
最后导致了时间浪费了,但是功能更新确很多时候都出问题。
就想着是不是可以自动化的去部署呢?
原本我们开放过程中是使用git做版本控制的,那是不是可以让git去自动化呢(测试服已使用git来自动化部署)?
但是对于线上在运行的项目再去部署一遍,还是害怕有东西没改到而出问题。有木有别的办法呢?google、百度出来的东西都是要重新部署,可是这并不能满足我的需求。
我需要的是,在已成型项目的所有东西一个都不变动的情况下,将自动化的部分完成。
既然搜索不出来就自己想办法。
一次忽然想起来,git版本控制不是通过在项目文件夹下的.git文件夹中的相关文件进行的吗?那我是不是可以复制.git文件夹到已成型的项目中去呢?这样是不是就可以完成别的东西都不变动的情况下,只增加.git文件夹就实现了我的需求?
说动就动,在自己的服务器上增加一个git空项目。然后本地clone下来,并提交了。然后各种修改、提交。完成后,在本地另外新建一个文件夹。将前面clone下来的项目中的.git全部复制过来,然后通过git查看状态、增加文件。嘿,居然可以,而且没有发现错误。
这个实验验证了这种方式是可行的。